具体的描述是这样的:
一个程序 a.exe 我手动运行后,弹出一个有这个一个文本框的窗体,请问,如何实现通过另一个 b.exe 程序,使a.exe运行的窗体上的文本框聚焦,并且自动填写内容?
注意:a.exe 已经被编译了,无法得到其源码!!!
帮忙,支个招~~谢谢啦
一个程序 a.exe 我手动运行后,弹出一个有这个一个文本框的窗体,请问,如何实现通过另一个 b.exe 程序,使a.exe运行的窗体上的文本框聚焦,并且自动填写内容?
注意:a.exe 已经被编译了,无法得到其源码!!!
帮忙,支个招~~谢谢啦
没必要将焦点移到那个文本框上.
直接发条WM_SETTEXT消息就行了;
当然前提是你要弄到那个文本框的句柄:).
然后调用API:GetDlgCtrlID,获得文本框的ID
这个ID是固定的,无论什么时候启动a.exe,这个文本框的ID都是固定的
然后你的程序通过Process.MainWindowHandle得到主窗口的句柄,结合刚才得到的ID,调用API:GetDlgItem获得文本框的句柄
有句柄,后面就好办了,可以调用SetWindowText,或者发送WM_SETTEXT消息就可以修改文本框的内容(不需要聚焦)
SetWindowText不能跨进程的.