000
09.08.2002, 21:33 Uhr
Christian
C/C++ Master (Operator)
|
Hallo!
Nachdem ich mich nun seit wahrscheinlich einem Jahr immer mal wieder mit der RichEditBox rumgeärgert habe muss ich jetzt mal hier im Forum euch etwas löchern:
Um Text in einer RichEditBox zu setzen muss man StreamIn() verwenden. Die CALLBACK Funktion, die ich hier angegeben habe, funktioniert.
Code: |
DWORD CALLBACK EditStreamCallbackIn( DWORD dwCookie, // application-defined value LPBYTE pbBuff, // pointer to a buffer LONG cb, // number of bytes to read or write LONG *pcb // pointer to number of bytes transferred ) { CString text = (CString)dwCookie; for(int l = 0; l < text->GetLength(); l++) { pbBuff[l] = text->GetAt(l); } *pcb = text->GetLength(); *text = ""; return 0;
}
|
Lösche ich aber nun die Zeile
dann funktioniert nichts mehr und die Callback Funktion wird immer wieder aufgerufen. Die Abbruchbedingungen, die man in der MSDN finden kann, sagen nichts darüber aus warum die Funktion immer wieder aufgerunfen wird. Kann es sein, dass der Cookie auf jeden Fall geleert werden muss, dass die Funktion nicht mehr aufgerufen wird? Wie kann ich mir das sonst erklären?
Danke. -- Grüße, Christian |