2 jjwilllm jjwilllm 于 2015.07.07 11:24 提问

给窗口发送消息,不能获得控件句柄

很多软件使用spy进行识别时,只能显示为一个整体,如果我想给这类窗口进行发送消息,实现给文本框输入值等操作时该怎么办?

4个回答

devmiao
devmiao   Ds   Rxr 2015.07.07 11:26

如果你只能看到窗体的句柄,那么说明这种程序中的控件其实根本不存在,是画出来的。这种程序叫做directui程序。
你只能模仿鼠标键盘操作。

jjwilllm
jjwilllm 您好,我看了SendInput的函数,他是把输入放到输入流中,能否实现发送到特定的应用程序窗口中?
2 年多之前 回复
oyljerry
oyljerry   Ds   Rxr 2015.07.07 14:55

不是说所有的窗口都支持SPY++来抓取窗口,它一般是windows标准窗口才能获取控件,以及发送消息等。
而还有很多其他界面库等,根本不会处理消息机制。所以你也不能直接发送消息,而是要用SendInput等来进行键盘鼠标模拟

oyljerry
oyljerry 回复jjwilllm: 那还可以用keybd_event对特定窗口模拟
2 年多之前 回复
jjwilllm
jjwilllm 您好,我看了SendInput的函数,他是把输入放到输入流中,能否实现发送到特定的应用程序窗口中?
2 年多之前 回复
91program
91program   Ds   Rxr 2015.07.07 11:31

控件,一般是不能直接发送到的。
一般的做法是先发送到窗体,然后由控件所在的窗体进行转发、或做对应的处理。

frank_20080215
frank_20080215   2015.07.07 16:40

这个是使用IE的控件和windows控件不同,那是没有句柄的。那要使用.NetGUI技术来操作。
这是在自动化测试

Csdn user default icon
上传中...
上传图片
插入图片