【发布时间】:2011-06-01 19:37:06
【问题描述】:
有谁知道如何将文本从 Delphi 应用程序发送到 Java 应用程序 RICHEDIT50W 控件?这个我试过了,还是不行:
oPinWindowHandle := FindWindow(nil, 'My Caption');
oRichEditControl := FindWindowEx(oPinWindowHandle, 0, 'RICHEDIT50W', nil);
SendMessage(oRichEditControl, WM_SETTEXT, 0, LongInt(PChar(msg)));
oRichEditControl 和 oPinWindowHandle 都有一个有效的句柄。
编辑
SendMessage 工作正常。它返回 1。也许应用程序正在阻止消息,甚至处理自己的消息。有什么方法可以找到应用接受哪些消息?
【问题讨论】:
-
首先使用 Spy++ 仔细检查 hwnd 是否正确
-
对 SendMessage 的调用是否返回错误?当消息被 UIPI 阻止时,使用 GetLastError 检索的最后一个错误设置为 5(拒绝访问)。
-
@Rafael 是
SendMessage函数返回的值(如果工作正常,必须为 1 或 true)? -
SendMessage 返回什么值?
-
@smasher 它工作正常。系统编组文本。
标签: java delphi winapi sendmessage