Condividi tramite


Metodo ObjectContext::CreateInstance (comsvcs.h)

Crea un oggetto utilizzando il contesto dell'oggetto corrente.

L'oggetto avrà contesto solo se il relativo componente è registrato con COM+.

Sintassi

HRESULT CreateInstance(
  [in]  BSTR    bstrProgID,
  [out] VARIANT *pObject
);

Parametri

[in] bstrProgID

ProgID del tipo di oggetto di cui creare un'istanza.

[out] pObject

Riferimento al nuovo oggetto.

Valore restituito

Questo metodo può restituire i valori restituiti standard E_INVALIDARG, E_OUTOFMEMORY e E_FAIL, nonché i valori seguenti.

Codice restituito Descrizione
S_OK
Metodo completato correttamente.
E_UNEXPECTED
Si è verificato un errore imprevisto. Ciò può verificarsi se un oggetto passa il puntatore ObjectContext a un altro oggetto e l'altro oggetto chiama CreateInstance usando questo puntatore. Un puntatore ObjectContext non è valido al di fuori del contesto dell'oggetto che lo ha originariamente ottenuto.

Commenti

Quando si crea un oggetto utilizzando CreateInstance, il contesto del nuovo oggetto viene derivato da ObjectContext dell'oggetto corrente e dalle proprietà dichiarative del componente del nuovo oggetto. Il nuovo oggetto viene sempre eseguito all'interno della stessa attività dell'oggetto che lo ha creato. Se l'oggetto corrente dispone di una transazione, l'attributo della transazione del componente del nuovo oggetto determina se il nuovo oggetto viene eseguito nell'ambito di tale transazione.

Se l'impostazione dell'attributo della transazione del componente richiede una transazione o supporta le transazioni, il nuovo oggetto eredita la transazione dell'autore. Se l'attributo di transazione del componente richiede una nuova transazione, COM+ avvia una nuova transazione per il nuovo oggetto. Se l'attributo di transazione del componente non supporta le transazioni, il nuovo oggetto non viene eseguito in alcuna transazione.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione comsvcs.h

Vedi anche

Objectcontext