Share via


WsCreateWriter 函式 (webservices.h)

會建立具有指定屬性的 XML 寫入器

語法

HRESULT WsCreateWriter(
                 const WS_XML_WRITER_PROPERTY *properties,
  [in]           ULONG                        propertyCount,
                 WS_XML_WRITER                **writer,
  [in, optional] WS_ERROR                     *error
);

參數

properties

WS_XML_WRITER_PROPERTY 結構的陣列,其中包含 XML 寫入器的選擇性屬性。

此參數的值可以是 NULL,在此情況下, propertyCount 參數必須是 0 (零) 。

[in] propertyCount

屬性陣列中的 屬性 數目。

writer

成功時,會接收代表所建立 XML 寫入器 之WS_XML_WRITER 結構的位址的指標。

當您不再需要此結構時,您必須呼叫 WsFreeWriter 來釋放它。

[in, optional] error

如果函式失敗,WS_ERROR結構的指標,該結構會收到其他錯誤資訊。

傳回值

如果函式成功,它會傳回NO_ERROR;否則會傳回 HRESULT 錯誤碼。

傳回碼 Description
E_INVALIDARG
一或多個引數無效。

備註

使用 WsSetOutputWsSetOutputToBuffer 函 式來選擇 XML 寫入器的編碼方式,並指出要導向輸出的位置。

您可以再次呼叫 WsSetOutputWsSetOutputToBuffer 來重複使用WS_XML_WRITER

如需可用來設定寫入器的屬性 ,請參閱WS_XML_WRITER_PROPERTY_ID

XML 寫入器會緩衝所有數據,直到 呼叫 WsFlushWriter 為止。 這可讓呼叫端判斷寫入數據的數據粒度,以及是否要以異步方式寫入該數據。 在呼叫 WsFlushWriter 之前,不會寫入數據。

如果 WS_XML_WRITER 上的作業失敗,寫入器會處於錯誤狀態,並進一步呼叫寫入器 傳回WS_E_OBJECT_FAULTED。 (請參閱 Windows Web 服務傳回 Values.) 如果發生此情況,XML 寫入器的唯一可能函式呼叫是 WsSetOutputWsSetOutputToBuffer ,才能將 XML 寫入器傳回可用狀態,或 WsFreeWriter 釋放 XML 寫入器。

規格需求

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