最近VC程序中用如下代码获取目标窗口文本并放入对话框的RichEdit中
          TCHAR buf[16*1024] = {0};
::SendMessage(g_hTargetWnd, WM_GETTEXT, _countof(buf), (LPARAM)buf);
GetDlgItem(IDC_TXTSEND)->SetWindowText(buf);对多数窗口,比如  记事本、EditPlus 的窗口,能够正常获得文本
但是对于PHP编辑器  PHPDesigner 8.1,我有时获得正常文本,有时获得一堆乱码。相同的内容,从 PHPDesigner拷贝到记事本,从记事本获取文本,是正常的一开始以为是我的程序哪里有问题,但后来用Spy++试验,发现移到 PHPDesigner 8.1的代码窗口,多次移开又移入,可以发现,Spy++获得的文本(“标题”)同样有时正常,有时乱码。可以确认,无论是正常时,还是乱码时,句柄是同一个, PHPDesigner 8.1的代码窗口未做任何编辑操作。从Spy++看,代码窗口是 TSynEdit类型,我就不清楚为什么会发生这种情况?是TSynEdit特有的,还是PHPDesigner特有的,或者其他原因。有谁能探究一把