Freigeben über


WsWriteEnvelopeStart-Funktion (webservices.h)

Schreibt den Anfang der Nachricht, einschließlich der aktuellen Kopfzeilen der Nachricht, und bereitet das Schreiben der Textelemente vor.

Diese Funktion ist für das Schreiben von Nachrichten an andere Ziele als Kanäle konzipiert. Verwenden Sie WsWriteMessageStart, um eine Nachricht in einen Kanal zu schreiben.

Syntax

HRESULT WsWriteEnvelopeStart(
  [in]           WS_MESSAGE               *message,
  [in]           WS_XML_WRITER            *writer,
  [in, optional] WS_MESSAGE_DONE_CALLBACK doneCallback,
  [in, optional] void                     *doneCallbackState,
  [in, optional] WS_ERROR                 *error
);

Parameter

[in] message

Ein Zeiger auf das zu schreibende Message-Objekt . Der Zeiger muss auf ein gültiges WS_MESSAGE-Objekt verweisen.

[in] writer

Ein Zeiger auf das XML Writer-Objekt , um die Nachricht zu schreiben. Das Message-Objekt verwendet den Writer in nachfolgenden Aufrufen, um die Nachricht zu schreiben. Der Aufrufer muss den Writer gültig halten, bis WsResetMessage oder WsFreeMessage aufgerufen wird.

Der parameter WS_MESSAGE_DONE_CALLBACK kann verwendet werden, um zu bestimmen, dass die WS_XML_WRITER nicht mehr verwendet wird.

[in, optional] doneCallback

Die Rückruffunktion, die aufgerufen wird, wenn die Nachricht veröffentlicht oder zurückgesetzt wird. Dieser Rückruf kann verwendet werden, um anzugeben, dass das WS_XML_WRITER-Objekt von dieser Nachricht nicht mehr verwendet wird. Wenn diese Funktion fehlschlägt, wird der Rückruf nicht aufgerufen. Wenn die Funktion erfolgreich ist, wird der Rückruf nur einmal aufgerufen.

[in, optional] doneCallbackState

Ein Voidzeiger auf einen benutzerdefinierten Zustand, der an den angegebenen Rückruf übergeben wird. Dieser Parameter kann NULL sein.

[in, optional] error

Ein Zeiger auf ein WS_ERROR-Objekt , in dem zusätzliche Informationen zum Fehler gespeichert werden sollen, wenn die Funktion fehlschlägt.

Rückgabewert

Diese Funktion kann einen dieser Werte zurückgeben.

Rückgabecode Beschreibung
WS_E_INVALID_FORMAT
Die Eingabedaten waren nicht im erwarteten Format oder hatten nicht den erwarteten Wert.
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 Anfang der Nachricht, einschließlich der aktuellen Kopfzeilen, die in der Nachricht vorhanden sind, werden in den Writer geschrieben.

Der Nachrichtenstatus muss auf WS_MESSAGE_STATE_INITIALIZED festgelegt werden. Bei erfolgreicher Ausführung wechselt der Nachrichtenzustand zu WS_MESSAGE_STATE_WRITING.
Beim Fehlerzustand tritt kein Übergang auf.

Verwenden Sie WsWriteBody, um ein Element des Nachrichtentexts zu schreiben. Um direkt in den Writer der Nachricht zu schreiben, rufen Sie den Reader mit der WS_MESSAGE_PROPERTY_ID auf WS_MESSAGE_PROPERTY_BODY_WRITER-Eigenschaft fest.

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