次の方法で共有


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