EM_GETTEXTEX bei RichEdit
-
Also das Richedit hab ich so :
HWND chat; chat = CreateWindowEx(WS_EX_CLIENTEDGE,RICHEDIT_CLASS,"",WS_CHILD|WS_VISIBLE|ES_DISABLENOSCROLL|ES_MULTILINE|ES_AUTOVSCROLL|WS_VSCROLL,chatposX,chatposY,chatWidth,chatHeight,hDlg,NULL,GetModuleHandle(NULL),NULL);Und jetzt moechte ich den Text aus dieser RichEdit lesen mit
char thetext[1000],buf[1000]; GETTEXTEX get; ZeroMemory(&get,sizeof(GETTEXTEX)); get.cb = sizeof(GETTEXTEX); get.codepage = CP_ACP; get.flags = GT_DEFAULT; get.lpDefaultChar = NULL; get.lpUsedDefChar = NULL; SendMessage(chat,EM_GETTEXTEX,(WPARAM)&get,(LPARAM)thetext); sprintf(buf,"%s\n",thetext); MessageBox(0,buf,"Buffer",MB_OK);Die MessageBox gibt mir aber nur die ersten 21 Zeichen aus , warum ?
-
MSDN schrieb:
...
lParam
Pointer to a null-terminated string that receives the text. The size of this buffer should be placed in the cb member of the GETTEXTEX structure.konkret:
get.cb = sizeof(thetext)-1;