Метод 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 |