Delphi 如何操作外部程序的控件(如按钮,文本框,单选按钮等)
2013-08-18 14:55
1091 查看
看你要做什么,比较现在网络很流行的QQ、MSN这些软件都屏蔽了,你可能还可以访问一些小软件的这些控制,思路及方案如下(API函数自己去百度查一下)
1.得到你要这个窗口的句柄 使用FindWindow
2.利用枚举函数EnumChildWindows把这个窗口里的所有文本框、按钮找到,并得到其句柄,EnumChildWindows需要一个回调函数,你可以在回调函数中把模拟输入,单击双击这些操作加上去
3.在回调函数里,其实就是向你找到的按钮或文本框发送消息
消息说明:
比如得到文本框中的文字消息:WM_GETTEXT
设置文本框的文字消息:WM_SETTEXT
鼠标左键单击WM_LBUTTONDOWN必须与WM_LBUTTONUP配对使用
双击左键WM_LBUTTONDBLCLK
给你破盆冷水,现在要实现操作外部程序是很困难的,现在的软件都超级变态了,以前用Api能解决的问题对商业软件都无效了!自从大量程序出自C#.net之后传统APi就显得力不从心了,像什么Hook之类的都被现有的杀毒软件所封杀了,现在我们这些所谓的高手也都转向别的领域了,没有再研究他们的必要了。总之只要能在网上找到的技术很快就会过时!因为人家打算公布就意味着新技术的开始.这是专业人员给你回答!
使用API
SendMessage发送一个消息到指定的窗口,如何查找窗口的句柄就需要配合Spy++之类的工具了
例如SendMessage(Handle,WM_CLOSE,0,0);能关闭本窗口
1.得到你要这个窗口的句柄 使用FindWindow
2.利用枚举函数EnumChildWindows把这个窗口里的所有文本框、按钮找到,并得到其句柄,EnumChildWindows需要一个回调函数,你可以在回调函数中把模拟输入,单击双击这些操作加上去
3.在回调函数里,其实就是向你找到的按钮或文本框发送消息
消息说明:
比如得到文本框中的文字消息:WM_GETTEXT
设置文本框的文字消息:WM_SETTEXT
鼠标左键单击WM_LBUTTONDOWN必须与WM_LBUTTONUP配对使用
双击左键WM_LBUTTONDBLCLK
给你破盆冷水,现在要实现操作外部程序是很困难的,现在的软件都超级变态了,以前用Api能解决的问题对商业软件都无效了!自从大量程序出自C#.net之后传统APi就显得力不从心了,像什么Hook之类的都被现有的杀毒软件所封杀了,现在我们这些所谓的高手也都转向别的领域了,没有再研究他们的必要了。总之只要能在网上找到的技术很快就会过时!因为人家打算公布就意味着新技术的开始.这是专业人员给你回答!
使用API
SendMessage发送一个消息到指定的窗口,如何查找窗口的句柄就需要配合Spy++之类的工具了
例如SendMessage(Handle,WM_CLOSE,0,0);能关闭本窗口
相关文章推荐
- 如何将操作按钮悬浮固定在微信小程序底部?
- delphi获取其他外部程序中TDBGridEh控件中的数据
- 如何让Delphi调用外部程序并等待其运行结束
- 如何让Delphi调用外部程序并等待其运行信息(如结束)
- Delphi中如何控制其他程序窗体上的窗口控件
- 如何让Delphi调用外部程序并等待其运行信息(如结束)
- delphi写的一个dll,在接口中如何接受外部程序送给他的一个数据集!
- 在C#.net中做页面上传的程序。用Dhtml的控件:(创建文件上载控件,该控件带有一个文本框和一个浏览按钮。)和类HtmlInputFile的两种方法
- JavaScript操作文本框、单选按钮、下拉框、复选框
- html中<radio>单选按钮控件标签用法解析及如何设置默认选中
- delphi 安卓程序如何读取外部配置文件
- Delphi中如何控制其他程序窗体上的窗口控件
- delphi 如何打开外部程序或文件
- (CEGUI)如何创建控件 ------按钮和文本框
- 在窗体上放置saveFileDialog、openFileDialog两个控件。实现功能:1)程序运行时,在文本框(注意文本框多行、带垂直滚动条)中输入汉字、字符等,单击保存按钮,即可将文本框中内容保
- ww控件实现某字段多个单选按钮操作
- delphi有关获取其他程序的窗口及对窗口内控件的操作
- 如何使用java程序界面上的按钮启动外部的exe程序
- delphi点击外部程序的按钮
- delphi点击外部程序的按钮