Funzione di callback EDITSTREAMCALLBACK (richedit.h)
La funzione EditStreamCallback è una funzione di callback definita dall'applicazione usata con i messaggi EM_STREAMIN e EM_STREAMOUT. Viene usato per trasferire un flusso di dati in o fuori da un controllo di modifica avanzato. Il tipo EDITSTREAMCALLBACK definisce un puntatore a questa funzione di callback. EditStreamCallback è un segnaposto per il nome della funzione definita dall'applicazione.
Sintassi
EDITSTREAMCALLBACK Editstreamcallback;
DWORD Editstreamcallback(
[in] DWORD_PTR dwCookie,
[in] LPBYTE pbBuff,
[in] LONG cb,
[in] LONG *pcb
)
{...}
Parametri
[in] dwCookie
Tipo: DWORD_PTR
Valore del membro
[in] pbBuff
Puntatore a un buffer in cui leggere o scrivere. Per un'operazione di flusso in lettura, la funzione di callback riempie il buffer con i dati da trasferire nel controllo rich edit. Per un'operazione di streaming (scrittura), il buffer contiene dati dal controllo che la funzione di callback scrive in un archivio.
[in] cb
Tipo: LONG
Numero di byte da leggere o scrivere.
[in] pcb
Tipo: LONG*
Puntatore a una variabile impostata dalla funzione di callback sul numero di byte effettivamente letti o scritti.
Valore restituito
La funzione di callback restituisce zero per indicare l'esito positivo.
La funzione di callback restituisce un valore diverso da zero per indicare un errore. Se si verifica un errore, l'operazione di lettura o scrittura termina e il controllo rich edit elimina tutti i dati nel buffer pbBuff. Se la funzione di callback restituisce un valore diverso da zero, il controllo rich edit utilizza il
Osservazioni
Quando si invia il messaggio di
Quando si invia il messaggio di
Il controllo chiama ripetutamente la funzione di callback, trasferendo una parte dei dati con ogni chiamata. Il controllo continua a chiamare la funzione di callback fino a quando non si verifica una delle condizioni seguenti:
- La funzione di callback restituisce un valore diverso da zero.
- La funzione di callback restituisce zero nel parametro * pcb.
- Si verifica un errore che impedisce al controllo rich edit di trasferire i dati all'interno o all'esterno di se stesso. Esempi sono situazioni di memoria insufficiente, errore di una funzione di sistema o carattere non valido nel buffer di lettura.
- Per un'operazione di flusso, il codice RTF contiene dati che specificano la fine di un blocco RTF.
- Per un'operazione di flusso in un controllo di modifica a riga singola, il callback legge in un carattere di fine paragrafo (CR, LF, VT, LS o PS).
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows Vista [solo app desktop] |
server minimo supportato | Windows Server 2003 [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
richedit.h |
Vedere anche
riferimento