Metodo IPrintWriteStreamFlush::FlushData (filterpipeline.h)
Il metodo FlushData scarica i dati memorizzati nel buffer in un flusso di dati lasciando aperto il flusso, consentendo al chiamante di scrivere dati aggiuntivi nel flusso. La scrittura nel flusso viene eseguita usando il metodo IPrintWriteStream::WriteBytes.
Sintassi
HRESULT FlushData();
Valore restituito
Il metodo FlushData restituisce un valore HRESULT.
Osservazioni
Solo l'ultimo filtro nella pipeline del filtro di stampa trae vantaggio dallo scaricamento. I dati vengono scaricati nel monitoraggio delle porte. Tuttavia, il monitoraggio delle porte ha la possibilità di usare buffer.
Esempi
Il frammento di codice seguente illustra come scaricare i dati in un flusso di dati. Si noti che il controllo degli errori è stato omesso per maggiore chiarezza.
// 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();
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | filterpipeline.h |