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();
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | filterpipeline.h |