共用方式為


IByteBuffer::Write 方法

[ Write 方法可用於需求一節中指定的作業系統。 它不適用於 Windows Server 2003 service Pack 1 (SP1) 及更新版本、Windows Vista、Windows Server 2008 和後續版本的作業系統。 IStream介面提供類似的功能。

Write方法會將指定的數位從位元組寫入資料流程物件,從目前的搜尋指標開始。

語法

HRESULT Write(
  [in]  BYTE *pByte,
  [in]  LONG cb,
  [out] LONG *pcbWritten
);

參數

pByte [in]

緩衝區的位址,其中包含要寫入資料流程的資料。 即使 cb 為零,也必須為此參數提供有效的指標。

cb [in]

要嘗試寫入資料流程的資料位元組數目。 此參數可以是零。

wwwWritten [out]

LONG變數的位址,這個方法會將寫入資料流程物件的實際位元組數目寫入其中。 呼叫端可以將這個指標設定為 Null,在此情況下,此方法不會提供寫入的實際位元組數目。

傳回值

傳回值為 HRESULT。 值S_OK表示呼叫成功。

備註

IByteBuffer::Write方法會將指定的資料寫入資料流程物件。 搜尋指標會針對實際寫入的位元組數目進行調整。 實際寫入的位元組數目會傳回 于 wwwWritten 參數中。 如果位元組計數為零位元組,寫入作業就不會有任何作用。

如果搜尋指標目前超過資料流程結尾,且位元組計數為非零,這個方法會將資料流程的大小增加至搜尋指標,並寫入從搜尋指標開始的指定位元組。 寫入資料流程的填滿位元組不會初始化為任何特定值。 這與 MS-DOS FAT 檔案系統中的檔案結束行為相同。

在零位元組計數和超過資料流程結尾的搜尋指標時,這個方法不會建立填滿位元組,以將資料流程增加至搜尋指標。 在此情況下,您必須呼叫 IByteBuffer::SetSize 方法來增加資料流程的大小,並寫入填滿位元組。

即使發生錯誤, 也可能會有一 個值。

在 COM 提供的實作中,資料流程物件不是疏鬆的。 任何填滿位元組最終會在磁片上配置,並指派給資料流程。

範例

下列範例顯示將位元組寫入資料流程物件。

LONG     lWrite;
HRESULT  hr;

// Write to the buffer.
// byData is an array of 64 bytes.
hr = pIByteBuff->Write(byData,
                       64,
                       &lWrite);
if (FAILED(hr))
  printf("Failed IByteBuffer::Write\n");

規格需求

需求
最低支援的用戶端
Windows XP [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2003 [僅限傳統型應用程式]
用戶端支援結束
Windows XP
伺服器終止支援
Windows Server 2003
標頭
Scardssp.h
類型程式庫
Scardssp.tlb
DLL
Scardssp.dll
IID
IID_IByteBuffer定義為 E126F8FE-A7AF-11D0-B88A-00C04FD424B9