WS_SERVICE_ACCEPT_CHANNEL_CALLBACK Rückruffunktion (webservices.h)
Wird aufgerufen, wenn ein Kanal auf einem Endpunktlistener vom Diensthost akzeptiert wird.
Bei sitzungsbasierten Dienstverträgen bedeutet diese Benachrichtigung die Sitzungsinitiierung. Daher kann innerhalb dieses Rückrufs ein anwendungsbezogener Zustand für die Sitzung erstellt werden.
Syntax
WS_SERVICE_ACCEPT_CHANNEL_CALLBACK WsServiceAcceptChannelCallback;
HRESULT WsServiceAcceptChannelCallback(
[in] const WS_OPERATION_CONTEXT *context,
void **channelState,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
)
{...}
Parameter
[in] context
Der Vorgangskontext.
channelState
Der Rückruf kann den Kanalstatus über diesen Parameter bereitstellen. Dieser Kanalzustand wird dem Dienstvorgang im Rahmen von WS_OPERATION_CONTEXT über die WS_OPERATION_CONTEXT_PROPERTY_CHANNEL_USER_STATE zur Verfügung gestellt.
[in, optional] asyncContext
Informationen dazu, ob die Funktion asynchron aufgerufen wird.
[in, optional] error
Gibt an, wo zusätzliche Fehlerinformationen gespeichert werden sollen, wenn die Funktion fehlschlägt.
Rückgabewert
Diese Rückruffunktion gibt keinen Wert zurück.
Hinweise
Siehe auch WS_SERVICE_CLOSE_CHANNEL_CALLBACK , die von der Anwendung verwendet werden kann, um die Zuordnung des Zustands zu aufheben, und wird beim Kanalverschluss aufgerufen.
Dieser Rückruf kann abgebrochen werden.
Beispiele
Eine Beispielimplementierung zur Verwendung dieses Rückrufs zum Zuordnen des Sitzungszustands finden Sie im Beispiel für den sitzungsbasierten Rechner.
HRESULT CALLBACK CreateSessionCalculator (const WS_OPERATION_CONTEXT* context, void** userChannelState,
const WS_ASYNC_CONTEXT* asyncContext, WS_ERROR* error)
{
SessionfullCalculator* calculator = new SessionfullCalculator ();
if (calculator != NULL)
*userChannelState = (void*) calculator;
else
return E_OUTOFMEMORY;
return NOERROR;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | webservices.h |