WsCheckMustUnderstandHeaders-Funktion (webservices.h)

Überprüft, ob die angegebenen Header vom Empfänger verstanden wurden.

Hinweis Diese Funktion sollte aufgerufen werden, nachdem alle Header für eine empfangene Nachricht gelesen wurden.

 

Syntax

HRESULT WsCheckMustUnderstandHeaders(
  [in]           WS_MESSAGE *message,
  [in, optional] WS_ERROR   *error
);

Parameter

[in] message

Zeiger auf die WS_MESSAGE-Struktur , die die zu verstehenden Header enthält.

[in, optional] error

Zeiger auf eine WS_ERROR-Struktur , in der zusätzliche Fehlerinformationen gespeichert werden, wenn die Funktion fehlschlägt.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird NO_ERROR zurückgegeben. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.

Rückgabecode Beschreibung
WS_E_INVALID_OPERATION
Die Nachricht befindet sich nicht im richtigen Zustand. Weitere Informationen finden Sie im Abschnitt mit Hinweisen.
WS_E_INVALID_FORMAT
Die Überprüfung ist fehlgeschlagen, oder die Meldung wurde nicht ordnungsgemäß formatiert.
E_INVALIDARG
Mindestens ein Argument ist ungültig.
E_OUTOFMEMORY
Unzureichender Arbeitsspeicher, um den Vorgang abzuschließen.
Andere Fehler
Diese Funktion gibt möglicherweise andere Fehler zurück, die oben nicht aufgeführt sind.

Hinweise

Da der Satz von Headern erweiterbar ist, muss ermittelt werden, ob eine Nachricht ausreichend verstanden wurde, um verarbeitet zu werden. Daher kann der Absender diese Funktion verwenden, um anzugeben, welche Header verstanden werden müssen, welche Header als optional oder informativ behandelt werden können.

Standardmäßige Adressierungsheader, z. B. die in WS_HEADER_TYPE definierten, werden automatisch als verstanden angenommen, auch wenn sie nie durch aufrufen von WsGetHeader gelesen werden.

Es wird auch angenommen, dass benutzerdefinierte, anwendungsdefinierte Header, die von WsGetCustomHeader gelesen werden, verstanden werden. Beim Aufrufen von WsGetCustomHeader wird der jeweilige Header automatisch als verstanden markiert.

Bei jedem anderen Header, der von der Anwendung verarbeitet wird, muss die Anwendung den Header explizit als durch Aufrufen von WsMarkHeaderAsUnderstood kennzeichnen. Andernfalls gilt der Header als nicht verstanden.

Diese Funktion sollte aufgerufen werden, nachdem alle Header für eine empfangene Nachricht gelesen wurden. Eine Ausnahme beim Aufrufen dieser Funktion ist der Fall eines Vermittlers, der die Nachricht an einen anderen Knoten weiterleitet, ohne seine Identität (Nachrichten-ID) zu ändern, da der endgültige Knoten die Überprüfung durchführen wird.

Die Funktion schlägt fehl, wenn einer der angegebenen Header nicht verstanden wurde. Wenn ein Fehlerobjekt für die Funktion bereitgestellt wird, wird es mit Informationen aufgefüllt, die zum Senden eines Fehlers verwendet werden können (siehe WsCreateFaultFromError).

Die Nachricht muss sich im zustand WS_MESSAGE_STATE_READING befinden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile webservices.h
Bibliothek WebServices.lib
DLL WebServices.dll