共用方式為


IPrintWriteStreamFlush::FlushData 方法 (filterpipeline.h)

FlushData 方法會將緩衝處理的數據排清至數據流,同時讓數據流保持開啟狀態,讓呼叫端可將其他數據寫入數據流。 寫入數據流是使用 IPrintWriteStream::WriteBytes 方法來完成。

語法

HRESULT FlushData();

傳回值

FlushData 方法會傳回 HRESULT 值。

言論

只有列印篩選管線中的最後一個篩選受益於排清。 數據會排清到埠監視器。 不過,埠監視器可以選擇使用緩衝區。

例子

下列代碼段示範如何將數據排清至數據流。 請注意,為了清楚起見,已省略錯誤檢查。

// Flushing data to a data stream
// ------------------------------
// Declare a pointer to an IPrintWriteStreamFlush interface
IPrintWriteStreamFlush *pIFlush;

// Retrieve a pointer to an IPrintWriteStream interface
// by using the RequestWriter() method in InitializeFilter()
IPrintWriteStream      *pIWrite;

HRESULT hr = pIWrite->QueryInterface(IID_IPrintWriteStreamFlush, reinterpret_cast<void **>(&pIFlush));

hr = pIWrite->WriteBytes(buf, cb, &cbWritten);

hr = pIFlush->FlushData();

要求

要求 價值
目標平臺 桌面
標頭 filterpipeline.h

另請參閱

IPrintWriteStream::WriteBytes

IPrintWriteStreamFlush