Spy++的使用方法

很多朋友都对窗口句柄比较迷糊,这篇短文就以spy++这个软件为主,介绍下窗体句柄和使用按键插件时
,如果对这个句柄发送消息,即所谓的后台挂机。
spy++这个软件来自VC++,装好VC后,就可以在工具中看到。

我们以“记事本”为例,看看如果给记事本发送按键消息。
首先启动记事本

随后启动SPY++

使用spy++的查找功能

点开后的效果

我们把黑色准星拖动到记事本窗体上

然后点击“确定”,看到了SPY++已经显示了下图红色的内容。

这三个句柄从上到下依次是:
记事本的主句柄
文字输入框的句柄
状态栏的句柄
我们要给记事本发送按键消息,就要选对发送对象(句柄),这里显然,我们要发送给“文字输入框”。我们双击“文字输入框”这里,可以看到“窗口标题”、“窗口大小”、“窗口位置”等信息。点击“类”选项卡,查看下类名是什么,代码里需要类名做参数

好了,基本的数据都有了,下面给出的代码:

  1. //打开记事本  
  2. VBSCall RunApp("notepad.exe")  
  3. //等待记事本完全打开  
  4. Delay 100  
  5. //得到当前窗口句柄  
  6. dim hwnd  
  7. Plugin hwnd=Window.Foreground()  
  8. //查找当前窗口下的子句柄  
  9. dim edithwnd  
  10. Plugin edithwnd=Window.FindEx(hwnd,0,"Edit",0)  
  11. //发送字符串消息  
  12. Plugin Window.SendString(edithwnd, "看我发送字符串消息")  
  13. //发送回车  
  14. Plugin Window.SendKeyDown(edithwnd,13)  
  15. //发送键盘消息  
  16. Plugin Window.SendKeyDown(edithwnd,asc("1")) 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Spy++ Lite 2.4 Build 20080512 Spy++ Lite是一款强有力的编程辅助工具,对分析窗体结构有独到之处。可以以十六进制和十进制两种不同方式显示窗口句柄等所有数值。本软件还可以简单调节窗口的状态和形为,如是否可见,是否可用,最大化,激活等。除此以外,您还可以把它当作一个截图的小工具来用。:) 下面举两个例子来小试牛刀: 1、激活灰色按钮: 打开任一文件的属性窗口,它的右下角处“应用”按钮都是不可用的(灰色的)。拖动本软件的探测器指针选中该按钮。切换至“消息”标签页,勾选“窗口可用”。看到了吧?“应用”按钮被我们激活了。 2、监视IE上网记录: 用本软件的探测器指针选中IE的地址栏。看到它的窗口类名为Edit;切换至“窗口”标签页,点击“父窗口”标签,使父窗口成为当前窗口;切换到“类”标签页,看到其类名为ComboBox;再依照上步点击,将得到父窗口类名依次是ComboBoxEx32、ReBarWindow32、WorkerW,直到最外层的IEFrame。此时再点击“子窗口列表”按钮,依次双击子窗口,看看能否找到地址栏Edit。窗体结构清楚了,我们就不难用FindWindowEx、SendMessage、GetClassName、GetWindowText等几个API函数来监视上网记录了。 升级日志: 2.2-2.4 增加功能: 1、更换内部控件,引用主题风格; 2、修正细节问题; 3、提供不同编程语言的开源版本。 2.1-2.2 增加功能: 1、去除对对话框控件的依赖; 2、修正进程ID的显示BUG。 2.0-2.1 增加功能: 1、可以直接选中不可用的窗口; 2、子窗口列表; 3、进入多级子窗口并可导出。 1.1-2.0 增加功能: 1、显示窗口ID、进程ID、程序文件路径; 2、窗口样式、扩展样式、类样式并列表给出; 3、消息功能,改变窗口的最大化、最小化、是否可见、是否可用等状态; 4、窗口截图。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值