以编程方式通过其UI访问应用程序

时间:2010-01-05 16:40:26

标签: automation macros infopath

之前我向automate processing of a file in InfoPath询问了有关命令行参数的问题。我可能会为那个获得Tumbleweed徽章。

不是通过命令行尝试批处理解决方案,有人可以建议一个很好的资源来开发一个解决方案,该解决方案将打开一个应用程序,然后通过应用程序的用户界面执行操作,如打开文件,打印文件和关闭文件?

我已经看到遗留应用程序在过去会执行此操作,它会打开Attachmate并通过Attachmate的界面执行I / O操作 - 但我从未见过代码。

一个限制是该过程将从现有的.NET解决方案启动(即处理10,000个文件)。我也无法依赖Excel中的传统Office宏 - InfoPath似乎不支持它们。

3 个答案:

答案 0 :(得分:3)

自动化基于GUI的应用程序的一个选项是使用AutoIT。它允许您编写单击菜单界面,使用对话框等所需的操作的脚本。

根据您的需要,您可以在开发机器上创建AutoIT脚本,将其编译为标准EXE,并使用.NET项目的编译工件进行部署。要将数据传递给它,要么使用AutoIT脚本获取命令行参数,要么让.NET解决方案将a写入包含所有输入文件参数的文件,并在文件中读取AutoIT脚本以处理它。根据问题中的数字,我可以选择写入文件。

答案 1 :(得分:1)

由于您已经在.NET上,因此您可能需要尝试新的 UI Automation 框架。我还没有尝试过,但它应该适用于WPF和本机Win32应用程序。

MSDN也有一些示例:UI Automation Control Pattern Samples

答案 2 :(得分:0)

Attachmate有一个脚本语言,一个API和各种其他东西来帮助自动化它。所以这可能不是典型的应用程序。

另一方面,Attachmate产品(IMO)极端可怕,我会竭尽全力避免与他们合作。