WsPullBytes-Funktion (webservices.h)

Richtet einen Rückruf ein, der aufgerufen werden soll, um die Bytes abzurufen, die in einem Element geschrieben werden sollen.
In einigen Codierungen kann dies effizienter sein, indem eine Kopie der Daten entfernt wird.

Syntax

HRESULT WsPullBytes(
  [in]           WS_XML_WRITER          *writer,
  [in]           WS_PULL_BYTES_CALLBACK callback,
  [in, optional] void                   *callbackState,
  [in, optional] WS_ERROR               *error
);

Parameter

[in] writer

Der Writer, in den die Bytes geschrieben werden.

[in] callback

Der Rückruf, der aufgerufen werden soll, wenn die Binärdaten geschrieben werden.

[in, optional] callbackState

Benutzerdefinierter Zustand, der an den Rückruf übergeben werden soll.

[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
E_INVALIDARG
Mindestens ein Argument ist ungültig.
WS_E_INVALID_OPERATION
Der Vorgang ist aufgrund des aktuellen Zustands des Objekts nicht zulässig.
WS_E_QUOTA_EXCEEDED
Ein Kontingent wurde überschritten.

Hinweise

WsWriteBytes und WsPushBytes erfordern, dass der Puffer der Daten für den Writer bereitgestellt wird. In einigen Verwendungsmustern ist hierfür möglicherweise eine zusätzliche Kopie der Daten erforderlich. Für diese Szenarien bietet WsPullBytes eine Möglichkeit, den Writer anzufordern, den Puffer bereitzustellen, der mit Daten gefüllt werden muss.

Wenn die Codierung dieses Verhalten nicht nutzen kann, ruft WsPullBytes den Rückruf sofort auf und funktioniert so, als ob WsWriteBytes für die resultierenden Daten aufgerufen wurde.

Anforderungen

   
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