Freigeben über


WS_CREATE_DECODER_CALLBACK Rückruffunktion (webservices.h)

Behandelt das Erstellen eines Decoder-instance.

Syntax

WS_CREATE_DECODER_CALLBACK WsCreateDecoderCallback;

HRESULT WsCreateDecoderCallback(
  [in]           void *createContext,
  [in]           WS_READ_CALLBACK readCallback,
  [in]           void *readContext,
                 void **decoderContext,
  [in, optional] WS_ERROR *error
)
{...}

Parameter

[in] createContext

Der createContext, der in der WS_CHANNEL_DECODER angegeben wurde, die bei der Kanalerstellung verwendet wurde.

[in] readCallback

Die Funktion, die zum Lesen der Nachrichtendaten verwendet werden soll. Dieser Rückruf sollte nur als Reaktion auf die WS_DECODER_START_CALLBACK, WS_DECODER_DECODE_CALLBACK und WS_DECODER_END_CALLBACK Rückrufe verwendet werden.

[in] readContext

Der Lesekontext, der an den angegebenen WS_READ_CALLBACK übergeben werden soll.

decoderContext

Gibt den decoder-instance zurück. Dieser Wert wird an alle Decoderrückrufe übergeben.

[in, optional] error

Gibt an, wo zusätzliche Fehlerinformationen gespeichert werden sollen, wenn die Funktion fehlschlägt.

Rückgabewert

Diese Rückruffunktion kann einen dieser Werte zurückgeben.

Rückgabecode Beschreibung
E_OUTOFMEMORY
Der Arbeitsspeicher ist nicht mehr vorhanden.
E_INVALIDARG
Mindestens ein Argument ist ungültig.
Andere Fehler
Diese Funktion gibt möglicherweise andere Fehler zurück, die oben nicht aufgeführt sind.

Hinweise

Der Kanal erstellt nach Bedarf Decoderinstanzen. Jeder Decoder instance wird in Singlethreads aufgerufen. Ein einzelner Decoder instance sollte jedoch nicht davon ausgehen, dass alle Nachrichten von einem Kanal angezeigt werden, da der Kanal mehrere Decoderinstanzen für die Verarbeitung von Nachrichten verwenden kann.

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