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 |