WsWriteMessageStart-Funktion (webservices.h)
Schreiben Sie alle Header der Nachricht in den Kanal, und bereiten Sie das Schreiben der Textelemente vor.
Syntax
HRESULT WsWriteMessageStart(
[in] WS_CHANNEL *channel,
[in] WS_MESSAGE *message,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
);
Parameter
[in] channel
Der Kanal, der zum Schreiben der Nachricht verwendet werden soll.
[in] message
Die zu schreibende Meldung.
[in, optional] asyncContext
Informationen zum asynchronen Aufrufen der Funktion oder NULL beim synchronen Aufrufen.
[in, optional] error
Gibt an, wo zusätzliche Fehlerinformationen gespeichert werden sollen, wenn die Funktion fehlschlägt.
Rückgabewert
Diese Funktion kann einen dieser Werte zurückgeben.
Rückgabecode | Beschreibung |
---|---|
|
Der asynchrone Vorgang steht noch aus. |
|
Der Vorgang wurde abgebrochen. |
|
Der Vorgang ist aufgrund des aktuellen Zustands des Objekts nicht zulässig. |
|
Der Remoteendpunkt ist nicht vorhanden oder konnte nicht gefunden werden. |
|
Der Zugriff wurde vom Remoteendpunkt verweigert. |
|
Die Verbindung mit dem Remoteendpunkt wurde beendet. |
|
Der Remoteendpunkt konnte die Anforderung nicht verarbeiten. |
|
Der Remoteendpunkt ist an diesem Standort derzeit nicht im Dienst. |
|
Der Remoteendpunkt kann die Anforderung aufgrund einer Überlastung nicht verarbeiten. |
|
Der Remoteendpunkt war nicht erreichbar. |
|
Die Endpunktadressen-URL ist ungültig. |
|
Die Eingabedaten waren nicht im erwarteten Format oder hatten nicht den erwarteten Wert. |
|
Der Vorgang wurde nicht innerhalb der zugewiesenen Zeit abgeschlossen. |
|
Der Zugriff wurde vom HTTP-Proxyserver verweigert. |
|
Der HTTP-Proxyserver konnte die Anforderung nicht verarbeiten. |
|
Ein Kontingent wurde überschritten. |
|
Die Sicherheitsüberprüfung war für die empfangenen Daten nicht erfolgreich. |
|
Fehler bei einem Sicherheitsvorgang im Windows-Webdienstframework. |
|
Ein Sicherheitstoken wurde vom Server abgelehnt, da es abgelaufen ist. |
|
Der HTTP-Proxyserver erfordert das HTTP-Authentifizierungsschema "basic". |
|
Der HTTP-Proxyserver erfordert das HTTP-Authentifizierungsschema "digest". |
|
Für den HTTP-Proxyserver ist das HTTP-Authentifizierungsschema "negotiate" erforderlich. |
|
Der HTTP-Proxyserver erfordert das HTTP-Authentifizierungsschema "NTLM". |
|
Für den Remoteendpunkt ist das HTTP-Authentifizierungsschema "basic" erforderlich. |
|
Für den Remoteendpunkt ist das HTTP-Authentifizierungsschema "digest" erforderlich. |
|
Für den Remoteendpunkt ist das HTTP-Authentifizierungsschema "negotiate" erforderlich. |
|
Für den Remoteendpunkt ist das HTTP-Authentifizierungsschema "NTLM" erforderlich. |
|
Ein erforderliches Zertifikat liegt nicht innerhalb seines Gültigkeitszeitraums, wenn es mit der aktuellen Systemuhr oder dem Zeitstempel in der signierten Datei überprüft wird. |
|
Der Zertifikat-CN-Name stimmt nicht mit dem übergebenen Wert überein. |
|
Eine Zertifikatkette, die verarbeitet, aber in einem Stammzertifikat beendet wird, das vom Vertrauensanbieter nicht vertrauenswürdig ist. |
|
Das Zertifikat ist für die angeforderte Verwendung nicht zulässig. |
|
Die Sperrfunktion konnte die Sperrung nicht überprüfen, da der Sperrserver offline war. |
|
Der Arbeitsspeicher ist nicht mehr vorhanden. |
|
Mindestens ein Argument ist ungültig. |
|
Diese Funktion gibt möglicherweise andere Fehler zurück, die oben nicht aufgeführt sind. |
Hinweise
Der Anfang der Nachricht, einschließlich der aktuellen Header, die in der Nachricht vorhanden sind, werden in den Kanal geschrieben.
Diese Funktion ähnelt WsWriteEnvelopeStart , wird aber mit Kanälen verwendet.
Die Nachricht muss sich in WS_MESSAGE_STATE_INITIALIZED Zustand befinden. Nach erfolgreichem Erfolg wird die Nachricht in WS_MESSAGE_STATE_WRITING Zustand übergehen.
Verwenden Sie WsWriteBody, um ein Element des Nachrichtentexts zu serialisieren. Um direkt in den XML Writer der Nachricht zu schreiben, rufen Sie zuerst den Reader mithilfe der eigenschaft WS_MESSAGE_PROPERTY_BODY_WRITER ab.
Wenn die Kanalausgabe gestreamt wird (WS_STREAMED_OUTPUT_TRANSFER_MODE), muss WsFlushBody aufgerufen werden, um tatsächlich jeden Teil des Textkörpers zu übertragen.
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 |