C++中用SendMessage(WM_GETTEXT)获得文本乱码如何解决?
各位老师,C++中用SendMessage(WM_GETTEXT)获得文本乱码如何解决?如图: int main(){
HWND hGameWnd1 = (HWND)197346;//0x
TCHAR szBuf;
LONG lResult;
lResult = SendMessage(hGameWnd1, WM_GETTEXT, sizeof(szBuf) / sizeof(szBuf), (LPARAM)szBuf);
printf("Copied %d 内容: %s\n", lResult, szBuf);
getchar();
return 0;
} 用memset给szBuf清零,或者用返回的lResult给字符串末尾补0。 苏紫方璇 发表于 2021-9-29 14:46
用memset给szBuf清零,或者用返回的lResult给字符串末尾补0。
老师,能详细讲一下具体操作吗?刚学,不太懂,谢谢你了 jtwc 发表于 2021-9-29 14:49
老师,能详细讲一下具体操作吗?刚学,不太懂,谢谢你了
tchar那句下边加memset(szBuf,0,sizeof(szBuf))
或者在send下边加szBuf=0 苏紫方璇 发表于 2021-9-29 14:46
用memset给szBuf清零,或者用返回的lResult给字符串末尾补0。
memset(szBuf, 0, sizeof(szBuf));这样吗? 老师,显示不出来 老师,send下边加szBuf=0,显示 烫烫烫是你的szBuf没有初始化。
你的lResult是0,没有返回的文本字符 失去灯塔的孤帆 发表于 2021-9-29 15:11
烫烫烫是你的szBuf没有初始化。
你的lResult是0,没有返回的文本字符
老师,原窗口是有文本字符的呀?用啥办法能读取呢?