Share via


WsPullBytes 函式 (webservices.h)

設定要叫用的回呼,以取得要寫入專案內的位元組。
在某些編碼中,藉由消除資料的複本,這可以更有效率。

語法

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

參數

[in] writer

要寫入位元組的寫入器。

[in] callback

在寫入二進位資料時叫用的回呼。

[in, optional] callbackState

要傳遞至回呼的使用者定義狀態。

[in, optional] error

指定函式失敗時應該儲存其他錯誤資訊的位置。

傳回值

此函式可以傳回其中一個值。

傳回碼 描述
E_INVALIDARG
一或多個引數無效。
WS_E_INVALID_OPERATION
由於 物件的目前狀態,不允許此作業。
WS_E_QUOTA_EXCEEDED
超過配額。

備註

WsWriteBytesWsPushBytes 需要將資料緩衝區提供給寫入器。 在某些使用模式中,這可能需要額外的資料複本。 針對這些案例, WsPullBytes 提供要求寫入器提供必須填入資料的緩衝區的方法。

如果編碼無法利用此行為, 則 WsPullBytes 會立即叫用回呼,就像在產生的資料上呼叫 WsWriteBytes 一樣運作。

規格需求

   
最低支援的用戶端 Windows 7 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 webservices.h
程式庫 WebServices.lib
Dll WebServices.dll