次の方法で共有


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

こちらもご覧ください

IPrintWriteStream::WriteBytes

IPrintWriteStreamFlush