我的目标是从VB.NET控制应用程序。没有API,我没有源代码,只有编译后的EXE文件。有没有办法找到打开的应用程序,在应用程序中找到一个按钮,点击一个按钮,并知道它被点击?有没有办法在应用程序中读取文本框的内容?有没有办法从VB.NET控制第三方EXE文件?
2
A
回答
4
是的,对于Windows Vista(或Windows 7或Windows Server 2003及更高版本),有“UI Automation”API。
有托管选项; System.Windows.Automation是.NET 3.0中的一部分,作为WPF的一部分...尽管System.Windows.Automation
作为WPF的一部分发布,但它并不要求目标应用程序使用WPF。
你可以阅读更多:
- 的UI Automation blog。
- the MSDN Magazine article - 关于使用PowerShell与
System.Management.Automation.dll
(System.Windows.Automation
的替代方案)的讨论。 - Blog post by Samuel Jack - 描述使用
System.Windows.Automation
来自动化Paint.NET程序(C#)。使用UI自动化测试的安装 - CodeProject article #2提供了一个基本的介绍了如何使用
System.Windows.Automation
0
是的,但您将不得不求助于使用本地API调用,例如EnumWindows
和EnumChildWindows
。看看How To Enumerate Windows Using the Win32 API。它适用于Visual Basic 6.0,但概念相同。
1
是的,你可以,但首先它可能会更易于使用“AutoIt”为原型设计的脚本首先
看一看从堆栈溢出发布Calling SendMessage (P/Invoke) keeps crashing在C#中的样本。 OP正在尝试访问第三方窗口应用程序,提取文本并在其程序中使用该文本......请注意,在给定链接中,如何使用“FindWindow”遍历主进程窗口的子窗口。
相关问题
- 1. Node/Express - 有没有办法从控制器方法访问静态文件?
- 2. 有没有办法在第三方类型上创建WCF DataContract?
- 3. VB.net:有没有办法从Printform获取打印文件路径?
- 4. 有没有其他方法可以从Java运行.exe文件?
- 5. 有没有办法控制Chrome GC?
- 6. 有没有办法控制ko.toJS/ko.toJSON?
- 7. 有没有办法用arduino控制iPad?
- 8. 有没有办法打开Tclkit包装的exe文件?
- 9. 有没有办法在linux中编辑windows c + + exe文件
- 10. 有没有办法在控制器方法之前检查控制器参数?
- 11. 有没有办法从文件加载控制器到ui-router $ stateProvider?
- 12. 有没有办法从Rails控制台查看方法的源代码?
- 13. 如何控制没有API的第三方应用程序?
- 14. 有没有办法显示与第三列的列关系?
- 15. 是否有任何第三方vb.net库播放MP3文件
- 16. 没有从控制器JsonResult方法
- 17. 有没有办法改变MVC3中控制器方法的文本颜色?
- 18. 有没有办法在VB.net中关闭打开的PDF文件编程方式
- 19. 有没有办法从插件中的第三方kodi/xbmc插件访问python代码?
- 20. 有没有办法从新帐户使用Firebase Legacy控制台
- 21. 有没有办法从外部控制photoshop属性?
- 22. Hudson有没有办法控制人们从命令行配置?
- 23. 有没有办法从aws web控制台获取s3 uri?
- 24. 有没有办法从FXML控制器中获得舞台?
- 25. 有没有办法从iOS设备控制USB摄像头?
- 26. 我想从.bat文件运行第三方.exe文件,但没有可见的命令提示符
- 27. 有没有办法在第三方URL上运行gremlin.js Monkey测试?
- 28. 有没有办法将facebook“链接”到您的第三方网站
- 29. 有没有办法了解第三方应用程序的执行情况?
- 30. 有没有办法在grails应用程序中添加第三方servlet?
你将会很难完成所有这些工作,但我相信它可以完成。 – 2010-03-05 02:00:56