Condividi tramite


Uso di servizi COM+ tramite CoEnterServiceDomain e CoLeaveServiceDomain

CoEnterServiceDomain e CoLeaveServiceDomain vengono usati insieme per racchiudere un'area di codice che viene eseguita nel proprio contesto e può usare i servizi COM+ senza la necessità di componenti COM+. I servizi COM+ usati in questo contesto vengono configurati tramite l'oggetto CServiceConfig passato a CoEnterServiceDomain. Il codice racchiuso tra CoEnterServiceDomain e CoLeaveServiceDomain si comporta come se fosse un metodo chiamato su un oggetto creato all'interno di questo contesto.

Un'applicazione di scripting può usare questa coppia di funzioni per fornire il supporto in fase di esecuzione dei servizi COM+ senza componenti. Ad esempio, un'applicazione di scripting può essere sviluppata per fornire tag che consentono ai writer di script di immettere e lasciare un dominio del servizio all'interno dello script. Quando il motore di scripting elabora lo script e rileva i tag, può chiamare CoEnterServiceDomain con un oggetto CServiceConfig preconfigurato, eseguire il codice necessario e quindi chiamare CoLeaveServiceDomain.

Strumento di Amministrazione istrative di Servizi componenti

Non è valida.

Visual Basic

Non è valida.

C/C++

Il frammento di codice seguente illustra come usare i servizi COM+ tra le chiamate a CoEnterServiceDomain e CoLeaveServiceDomain. La gestione degli errori è stata omessa per brevità. Questo frammento di codice usa l'oggetto CServiceConfig creato e configurato in Configurazione di SERVIZI COM+ con CServiceConfig.

// A CServiceConfig object was created as follows:
// hr = CoCreateInstance(CLSID_CServiceConfig, NULL, CLSCTX_INPROC_SERVER, 
//   IID_IUnknown, (void**)&pUnknownCSC);

// Enter the Service Domain.
HRESULT hr = CoEnterServiceDomain(pUnknownCSC);
if (FAILED(hr)) throw(hr);

// Do the work that uses COM+ services here.
//DoMyWork();

// Leave the Service Domain.
CoLeaveServiceDomain(NULL);

CoEnterServiceDomain

CoLeaveServiceDomain

Configurazione di servizi COM+ con CServiceConfig

CServiceConfig

Uso di servizi COM+ tramite CoCreateActivity