记得几年前就写过这样的程序,通过获取程序的句柄,向句柄发送消息,最常见的就是发送按键信息。这样就可以实现类似外挂的小功能,而呼死你程序其实也是一个小外挂,通过这个外挂程序,不停的呼叫网络电话,从而实现频繁的自动呼叫。
但那个时候写的程序只能向有句柄的程序发送,而实践过程中,发现很多程序的界面,包括按钮,文本框等都是画出来的,整个程序就一个句柄,这个时候就不知道怎么发送消息控制了。
但今天群里的“纯阳”说起这个问题,并且帮忙解答了这个问题。
其实用的API还是以前那个API:PostMessageA(sendmessage这个API也行)。
来看看这个函数的解释:
其实就是最后两个参数不会用,而这里就是要用到最后那个参数,第三个参数,现在还是不会用。最后那个参数其实就是点击的坐标相对于程序的坐标,那怎么取得这个相对坐标呢?
使用工具SPY++,本来这个工具之前也没用过,不怎么会用,感谢“纯阳”远程协助操作了下,在这个工具中锁定了消息以后,就可以监控到点击到某个具体位置的消息了,并且可以看到IParam这个参数的具体数值,不过要注意的是,这里显示的参数是16进制的,要用计算器转化成10进制的数字,才能放到易语言中使用。
以后就能向这种画出来的程序发送消息了,比如QQ之类的都是这种,还有很多网络电话其实也是这种画出来的界面。
标签: PostMessageA,SPY++,句柄