Share via


EDITSTREAMCALLBACK-Rückruffunktion (richedit.h)

Die EditStreamCallback-Funktion ist eine anwendungsdefinierte Rückruffunktion, die mit den EM_STREAMIN - und EM_STREAMOUT-Nachrichten verwendet wird. Es wird verwendet, um einen Datenstrom in oder aus einem Rich-Bearbeitungssteuerelement zu übertragen. Der EDITSTREAMCALLBACK-Typ definiert einen Zeiger auf diese Rückruffunktion. EditStreamCallback ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.

Syntax

EDITSTREAMCALLBACK Editstreamcallback;

DWORD Editstreamcallback(
  [in] DWORD_PTR dwCookie,
  [in] LPBYTE pbBuff,
  [in] LONG cb,
  [in] LONG *pcb
)
{...}

Parameter

[in] dwCookie

Typ: DWORD_PTR

Wert des dwCookie-Members der EDITSTREAM-Struktur . Die Anwendung gibt diesen Wert an, wenn sie die EM_STREAMIN - oder EM_STREAMOUT-Nachricht sendet.

[in] pbBuff

Typ: LPBYTE

Zeiger auf einen Puffer, aus dem gelesen oder geschrieben werden soll. Bei einem Stream-In-Vorgang (Lesevorgang) füllt die Rückruffunktion diesen Puffer mit Daten, die in das Rich-Edit-Steuerelement übertragen werden. Bei einem Streamoutvorgang (Schreibvorgang) enthält der Puffer Daten aus dem Steuerelement, die die Rückruffunktion in einen Speicher schreibt.

[in] cb

Typ: LONG

Anzahl der Bytes, die gelesen oder geschrieben werden sollen.

[in] pcb

Typ: LONG*

Zeiger auf eine Variable, die von der Rückruffunktion auf die Anzahl der tatsächlich gelesenen oder geschriebenen Bytes festgelegt wird.

Rückgabewert

Typ: DWORD

Die Rückruffunktion gibt null zurück, um den Erfolg anzuzeigen.

Die Rückruffunktion gibt einen Ungleichwert zurück, um auf einen Fehler hinzuweisen. Wenn ein Fehler auftritt, wird der Lese- oder Schreibvorgang beendet, und das Rich-Edit-Steuerelement verwirft alle Daten im pbBuff-Puffer . Wenn die Rückruffunktion einen nonzero-Wert zurückgibt, verwendet das Rich-Edit-Steuerelement den dwError-Member der EDITSTREAM-Struktur , um den Wert zurück an die Anwendung zu übergeben.

Hinweise

Wenn Sie die EM_STREAMIN oder EM_STREAMOUT Nachricht an ein Rich-Edit-Steuerelement senden, gibt das pfnCallback-Element der EDITSTREAM-Struktur einen Zeiger auf eine EditStreamCallback-Funktion an. Das Rich-Edit-Steuerelement ruft die Funktion wiederholt auf, um einen Datenstrom in das Steuerelement oder aus dem Steuerelement zu übertragen.

Wenn Sie die EM_STREAMIN - oder EM_STREAMOUT-Nachricht senden, geben Sie einen Wert für das dwCookie-Element der EDITSTREAM-Struktur an. Das Rich-Edit-Steuerelement verwendet den dwCookie-Parameter , um diesen Wert an Ihre EditStreamCallback-Funktion zu übergeben. Beispielsweise können Sie dwCookie verwenden, um ein Handle an eine geöffnete Datei zu übergeben. Die Rückruffunktion kann dann das dwCookie-Handle verwenden, um aus der Datei zu lesen oder in diese zu schreiben.

Das Steuerelement ruft die Rückruffunktion wiederholt auf und überträgt einen Teil der Daten mit jedem Aufruf. Das Steuerelement ruft die Rückruffunktion weiterhin auf, bis eine der folgenden Bedingungen auftritt:

  • Die Rückruffunktion gibt einen nichtzero-Wert zurück.
  • Die Rückruffunktion gibt null im * pcb-Parameter zurück.
  • Es tritt ein Fehler auf, der verhindert, dass das Rich-Edit-Steuerelement Daten in oder aus sich selbst überträgt. Beispiele sind Situationen mit fehlendem Arbeitsspeicher, Fehler einer Systemfunktion oder ein ungültiges Zeichen im Lesepuffer.
  • Bei einem Stream-In-Vorgang enthält der RTF-Code Daten, die das Ende eines RTF-Blocks angeben.
  • Bei einem Stream-In-Vorgang für ein einzeiliges Bearbeitungssteuerelement liest der Rückruf ein Absatzendezeichen (CR, LF, VT, LS oder PS).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile richedit.h

Weitere Informationen

EDITSTREAM

EM_STREAMIN

EM_STREAMOUT

Referenz