Richedit EM_GETLINE will einfach nicht!
-
Da stehen immer nur Chinesische zeichen drin.
Das hier ist mein code:int length = SendMessage(hWndUrls, EM_LINELENGTH, 0, 0); wchar_t *szBuf = new wchar_t[length+1]; szBuf[0] = length; szBuf[length] = '\0'; SendMessage(hWndUrls, EM_GETLINE, 0, (LPARAM)szBuf); wstring Line = szBuf;
Vielen Dank
Johannes
-
Vermutlich ist Deine TestBox keine Uncode-Textbox, sondern eine ANSI...
-
Ich habe es so erstellt, wie mache ich es den UNICODE?
hWndUrls = CreateWindow(MSFTEDIT_CLASS, L"", WS_VISIBLE | WS_CHILD | ES_MULTILINE | ES_SUNKEN | WS_VSCROLL | WS_HSCROLL, 20, 56, rect.right-40, rect.bottom-120, hWnd4, (HMENU)id_Urls, hInstUrls, (LPVOID)lParam);
-
Windows verwendet TCHAR... alle WinAPI-Funktionen hängen also davon ab, was in Deinen Projekt-Einstellungen verwendet wird!
Wennn Du es für Unicode gemacht _hättest_, dann hättest Du "CreateWindowW" verwendet!
-
Aber CreateWindow ist bei mir'n makro das als CreateWindowW definiert ist, genauso wie MSFTEDIT_CLASS als L"RICHEDIT50W". Und ich habe ja auch in createwindow den Title Parameter als L"" geschrieben und nicht ""...
-
Ich habe keinen schimmer wieso, aber jetzt geht es plötzlich!!!