Verwenden von COM+-Diensten über CoCreateActivity

Die CoCreateActivity-Funktion wird verwendet, um Batcharbeit an das COM+-System zu übermitteln. Es ermöglicht skriptbasierten Anwendungen die Unterstützung einer anwendungsweiten COM+-Dienstkonfiguration.

Die gewünschten COM+-Dienste werden über ein CServiceConfig-Objekt konfiguriert, das an die Funktion übergeben wird. Die Funktion erstellt ein Aktivitätsobjekt und gibt die IServiceActivity-Schnittstelle dieses Objekts zurück. Die Batchverarbeitung kann entweder synchron oder asynchron übermittelt werden, indem die SynchronousCall- bzw. AsynchronousCall-Methode von IServiceActivity verwendet wird. Ein Zeiger auf eine IServiceCall-Schnittstelle wird an jede dieser Methoden übergeben, und die Batchverarbeitung wird vom Entwickler in der OnCall-Methode der IServiceCall-Schnittstelle implementiert.

Verwaltungstool für Komponentendienste

Nicht anwendbar.

Visual Basic

Nicht anwendbar.

C/C++

Das folgende Codefragment veranschaulicht die Verwendung von COM+-Diensten über CoCreateActivity. Die Fehlerbehandlung wurde weggelassen, um die Komplexität gering zu halten. Dieses Codefragment verwendet das CServiceConfig-Objekt, das in Configuring COM+ Services with CServiceConfig (Konfigurieren von COM+-Diensten mit CServiceConfig) erstellt und konfiguriert wurde.

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

// Create the activity for our services.
HRESULT hr = CoCreateActivity(pUnknownCSC, IID_IServiceActivity, (void**)&pActivity);
if (FAILED(hr)) throw(hr);

// Do the batch work synchronously.
// The batch work is implemented in pServiceCall->OnCall().
hr = pActivity->SynchronousCall(pServiceCall);
if (FAILED(hr)) throw(hr);

CoCreateActivity

Konfigurieren von COM+-Diensten mit CServiceConfig

CServiceConfig

Verwenden von COM+-Diensten über CoEnterServiceDomain und CoLeaveServiceDomain