Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Diensthost ermöglicht es einer Anwendung, Statusdaten zuzuordnen, die auf Diensthostebene ausgerichtet sind. Dieser Zustand wird durch eine WS_SERVICE_PROPERTY-Struktur angegeben, die an die WsCreateServiceHost-Funktion übergeben wird, wenn die Anwendung einen Diensthost erstellt, wie im folgenden Beispiel veranschaulicht.
void* quotePtr = (void*) quotes;
WS_SERVICE_PROPERTY serviceProperties[1] = {0};
serviceProperties[0].id = WS_SERVICE_PROPERTY_HOST_USER_STATE;
serviceProperties[0].value = "ePtr; // assume this is some state that you want to associate with the service host
serviceProperties[0].valueSize = sizeof(quotePtr);
Die Statusdaten sind für alle Diensthostrückrufe und Dienstvorgänge verfügbar. Rückrufe und Dienstvorgänge rufen die Informationen ab, indem sie die WsGetOperationContextProperty-Funktion aufrufen und den Kontext angeben, auf den die WS_OPERATION_CONTEXT-Struktur verweist, und die context-Eigenschaft als einen der Werte der WS_OPERATION_CONTEXT_PROPERTY_HOST_USER_STATE-Enumeration, wie im folgenden Beispiel veranschaulicht.
QuoteTable* table = NULL;
HRESULT hr = NOERROR;
if (FAILED (WsGetOperationContextProperty (context, WS_OPERATION_CONTEXT_PROPERTY_HOST_USER_STATE, &table, sizeof(table), NULL, error)))
return hr;