Fonction de rappel EDITSTREAMCALLBACK (richedit.h)
La fonction EditStreamCallback est une fonction de rappel définie par l’application utilisée avec les messages EM_STREAMIN et EM_STREAMOUT. Il est utilisé pour transférer un flux de données vers ou hors d’un contrôle d’édition enrichi. Le type EDITSTREAMCALLBACK définit un pointeur vers cette fonction de rappel. EditStreamCallback est un espace réservé pour le nom de la fonction définie par l’application.
Syntaxe
EDITSTREAMCALLBACK Editstreamcallback;
DWORD Editstreamcallback(
[in] DWORD_PTR dwCookie,
[in] LPBYTE pbBuff,
[in] LONG cb,
[in] LONG *pcb
)
{...}
Paramètres
[in] dwCookie
Type : DWORD_PTR
Valeur du membre
[in] pbBuff
Pointeur vers une mémoire tampon vers laquelle lire ou écrire. Pour une opération de flux (lecture), la fonction de rappel remplit cette mémoire tampon avec des données à transférer dans le contrôle d’édition enrichi. Pour une opération de flux sortant (écriture), la mémoire tampon contient des données du contrôle que la fonction de rappel écrit dans un stockage.
[in] cb
Type : LONG
Nombre d’octets à lire ou à écrire.
[in] pcb
Type : LONG*
Pointeur vers une variable que la fonction de rappel définit sur le nombre d’octets réellement lus ou écrits.
Valeur de retour
La fonction de rappel retourne zéro pour indiquer la réussite.
La fonction de rappel retourne une valeur différente de zéro pour indiquer une erreur. Si une erreur se produit, l’opération de lecture ou d’écriture se termine et le contrôle d’édition enrichi ignore toutes les données de la mémoire tampon pbBuff
Remarques
Lorsque vous envoyez le message EM_STREAMIN ou EM_STREAMOUT à un contrôle d’édition enrichi, le membre pfnCallback de la structure EDITSTREAM spécifie un pointeur vers une fonction EditStreamCallback. Le contrôle d’édition enrichi appelle à plusieurs reprises la fonction pour transférer un flux de données vers ou hors du contrôle.
Lorsque vous envoyez le message
Le contrôle appelle la fonction de rappel à plusieurs reprises, en transférant une partie des données avec chaque appel. Le contrôle continue d’appeler la fonction de rappel jusqu’à ce que l’une des conditions suivantes se produise :
- La fonction de rappel retourne une valeur différente de zéro.
- La fonction de rappel retourne zéro dans le paramètre * ccp.
- Une erreur se produit qui empêche le contrôle d’édition enrichi de transférer des données vers ou hors de lui-même. Par exemple, des situations hors mémoire, une défaillance d’une fonction système ou un caractère non valide dans la mémoire tampon de lecture.
- Pour une opération de flux de données, le code RTF contient des données spécifiant la fin d’un bloc RTF.
- Pour une opération de flux de données sur un contrôle d’édition à ligne unique, le rappel lit dans un caractère de fin de paragraphe (CR, LF, VT, LS ou PS).
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows Vista [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | richedit.h |
Voir aussi
de référence