Méthode IPrintWriteStreamFlush ::FlushData (filterpipeline.h)

La méthode FlushData vide les données mises en mémoire tampon dans un flux de données tout en laissant le flux ouvert, ce qui permet à l’appelant d’écrire des données supplémentaires dans le flux. L’écriture dans le flux s’effectue à l’aide de la méthode IPrintWriteStream ::WriteBytes .

Syntaxe

HRESULT FlushData();

Valeur de retour

La méthode FlushData retourne une valeur HRESULT.

Remarques

Seul le dernier filtre du pipeline de filtre d’impression bénéficie du vidage. Les données sont vidées sur le moniteur de port. Toutefois, le moniteur de port a la possibilité d’utiliser des mémoires tampons.

Exemples

L’extrait de code suivant montre comment vider des données dans un flux de données. Notez que la vérification des erreurs a été omise pour plus de clarté.

// 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();

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête filterpipeline.h

Voir aussi

IPrintWriteStream ::WriteBytes

IPrintWriteStreamFlush