社区
C#
帖子详情
我想获取qq查找窗口下某一个控件的句柄,但不知道它具体的Classname怎么解决
wsj19860218
2009-12-27 07:53:37
我想获取QQ查找窗口下某一个控件的句柄,我已用FindWindowEx()得到了该查找窗口的句柄,我还想利用FindWindowEx()得到此窗口下某一个控件的句柄,但不知道它的第三个参数即Classname,怎么解决?
...全文
405
9
打赏
收藏
我想获取qq查找窗口下某一个控件的句柄,但不知道它具体的Classname怎么解决
我想获取QQ查找窗口下某一个控件的句柄,我已用FindWindowEx()得到了该查找窗口的句柄,我还想利用FindWindowEx()得到此窗口下某一个控件的句柄,但不知道它的第三个参数即Classname,怎么解决?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wsj19860218
2009-12-29
打赏
举报
回复
谢谢各位!我用spy++已经解决了!!!!
mingcsharp
2009-12-28
打赏
举报
回复
同意,Spy++就是干这个的
windowformpoint
人到中年琐事多
2009-12-27
打赏
举报
回复
[Quote=引用 4 楼 yulinlover 的回复:]
用Spy++去查一下,或者EnumWindows
[/Quote]
同意,Spy++就是干这个的
Jave.Lin
2009-12-27
打赏
举报
回复
Passing
Mark
Study
Up
mngzilin
2009-12-27
打赏
举报
回复
用C++写过,没用C#写过
yulinlover
2009-12-27
打赏
举报
回复
用Spy++去查一下,或者EnumWindows
lijunwsp
2009-12-27
打赏
举报
回复
加上上面脚本文件中的标题,方便理解
序号,备注,操作,对象,值1,值2,超时,保存结果,异常操作,异常值,对象值
1,启动计算器,Run,,calc.exe,,,Auto,FailureSkipStep,0,
2,Sleep,Sleep,,1000,,,Auto,FailNext,0,
3,点击按钮1,Click,But_One,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)Button(text=1)
4,点击按钮+,Click,But_Add,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)Button(text=+)
5,点击按钮2,Click,But_Two,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)Button(text=2)
6,点击按钮=,Click,But_Equal,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)Button(text==)
7,比较错误结果,Get,Txt_Result,text,55. ,2,Auto,FailNext,,SciCalc(text=计算器)Edit()
8,比较正确结果,Get,Txt_Result,text,3. ,2,Auto,FailNext,,SciCalc(text=计算器)Edit()
9,关闭计算器,Close,CalcWindow,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)
10,杀掉计算器进程,Kill,,calc.exe,,,Auto,FailNext,,
lijunwsp
2009-12-27
打赏
举报
回复
我最近在这这方面的研究,比如你想定位一个控件,如登录窗体的登录按钮,那么你首先得知道登录窗体的句柄,知道了登录窗体的句柄再去找登录按钮就比较容易了
下面是我写的脚本文件中的内容,用C#去解析然后执行
“
3,点击按钮1,Click,But_One,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)Button(text=1)
...
9,关闭计算器,Close,CalcWindow,,,2,Auto,FailureSkipStep,0,SciCalc(text=计算器)
10,杀掉计算器进程,Kill,,calc.exe,,,Auto,FailNext,,
”
我拿第3步来举例,即我点击计算器中的按钮1,我知道了计算器的类名是“SciCalc”,首先获取所有顶级窗口的句柄,判断类名是“SciCalc”则再比较该句柄的标题是不是“计算器”,如果是的话再查找按钮1,比如计算器的句柄是“123456”,那么获取“123456”下所有的子句柄,从子句柄子一个一个比较,查找类名是“Button”且标题是“1”的就行了
这上面只是一个小例子,当然很多时间你要标识一个对象得用多个属性,比如控件的标题是1,但是readonly是true、相对于父亲窗体的x、y坐标等,可以标识多个属性然后进行比较,至于怎么获取所有顶级窗口?怎么获取所有的子窗体?百度或Google一下有很多了
wuyq11
2009-12-27
打赏
举报
回复
string lpszClass = "EditComponent"; //需要查找的子窗口的类名,也就是输入框
FindWindowEx(ParenthWnd,EdithWnd,lpszClass,"");
在spy++里看看
VB用来
查找
控件
或
窗口
句柄
的发送器(可以生成源代码)
这是
一个
查找
控件
或
窗口
句柄
,然后发送消息的程序,功能强大,Visual Basic 6.0编写,可以托到放大镜
查找
到
QQ
资料
控件
的
句柄
设置资料,不会被限制长度,也可以设置超长网名(在群里有效),还有其它的地方都可以用到,自己慢慢研究一下,现在只是随便做了一下,其实还可以加好多功能的,大家可以提出宝贵的意见.
VB用来
查找
控件
或
窗口
句柄
的发送器
这是
一个
查找
控件
或
窗口
句柄
,然后发送消息的程序,功能强大,Visual Basic 6.0编写,可以托到放大镜
查找
到
QQ
资料
控件
的
句柄
设置资料,不会被限制长度,也可以设置超长网名(在群里有效),还有其它的地方都可以用到,自己慢慢研究一下,现在只是随便做了一下。
Windows游戏编程系列之1:GUI
窗口
界面编程及游戏入门实战
我将带领大家来系统学习Windows的
窗口
编程,包括消息、
窗口
、GDI绘图、游戏开发等。 本课程比较基础,非常适合初学者入门,读者可以边学习边实践。
具体
的章节目录和课程内容如下所示: ---------------------------...
spy4软件
是
一个
类似MS Spy++的辅助工具,主要功能是探测和
获取
窗口
的更多信息(
窗口
基本信息,
窗口
的样式描述以及动态改变
窗口
样式,识别
控件
来源,
窗口
类的相关信息,关系
窗口
的
获取
(父
窗口
/子
窗口
等),
窗口
内容的读取,
窗口
消息截获,可视
窗口
截图等)。提供了多种方法
查找
窗口
(拖拽鼠标/枚举
窗口
(EnumWindow)/
查找
窗口
(FindWindow)/直接指定
窗口
句柄
/用热键
获取
当前鼠标下
窗口
等);可以从可执行文件中提取窗体可重用单元并生成Delphi和C++Builder支持的单元文件;克隆其他程序中的窗体菜单或系统菜
Spy4Win.zip
Spy4Win(Spy for Window)是
一个
类似MS Spy++的辅助工具,主要功能是探测和
获取
窗口
的更多信息(
窗口
基本信息,
窗口
的样式描述以及动态改变
窗口
样式,识别
控件
来源,
窗口
类的相关信息,关系
窗口
的
获取
(父
窗口
/子
窗口
等),
窗口
内容的读取,
窗口
消息截获,可视
窗口
截图等)。 提供了多种方法
查找
窗口
(拖拽鼠标/枚举
窗口
(EnumWindow)/
查找
窗口
(FindWindow)/直接指定
窗口
句柄
/用热键
获取
当前鼠标下
窗口
等); 可以从可执行文件中提取窗体可重用单元并生成Delphi和C++Builder支持的单元文件; 克隆其他程序中的窗体菜单或系统菜单并应用到Delphi和C++Builder中; IE页面分析功能包括读取IE页面元素,缩放页面,高亮页面中的关键字,提取所有链接/图片链接/Flash链接,运行JavaScript和VBScript脚本等; 程序代码生成可直接生成
查找
窗口
和读取/设置
窗口
样式的代码以及
窗口
样式描述的参考,目前支持C++/Delphi/VB; 屏幕颜色拾取
获取
屏幕任何一点的颜色并可将其储存起来,一组支持6个颜色,还兼有放大镜功能; 进程管理包括当前进程/模块/线程查看; 软件界面可根据用户的爱好自定义主题色彩,新版本中提供了对插件的支持,可以通过编写Dll来扩充软件功能。
C#
110,572
社区成员
642,565
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章