另一个是关于Win32 Vs UI自动化的

本文关键字:UI 自动化 Vs Win32 另一个 | 更新日期: 2023-09-27 18:11:00

我正在构建一个(Web/WinForms应用程序我还没有决定),我有一个运行简单的WinForms应用程序,我无法通过我的新应用程序以任何方式访问,我只是想读取一些值,也许编辑一些值(标签,按钮,一些琐碎的东西)。所以我按照这个问题的建议使用了spy++。

所以,我能够通过这个伟大的工具看到我需要阅读/编辑的值。我能够编辑一些值(如隐藏,取消选中,禁用等一些标签和按钮),他们反映在应用程序。

所以我想进入下一步,我被告知我有两个选择。无论是Win32还是UI自动化。这两个我都不知道,所以给点指导就太好了。

关于这个问题我还有三个问题:

  1. 哪个更适合用于WinForms,为什么?

  2. 这两个选项中的任何一个都可以通过WebApplication使用,还是两个选项都需要在WinForms应用程序中实现?

  3. 这些选项在编辑值时是否有限制?

另一个是关于Win32 Vs UI自动化的

(如果您还在搜索…)

这取决于你更熟悉什么。而且,一般来说,我认为,UI自动化稍微容易一些,因为对于Wind32SDK,你需要使用大量的pinvoke和类似的东西,这对于纯。net的人来说可能不容易。

对于Win32, http://www.pinvoke.net/default.aspx/确实是一个最好的起点,它给了你所有的签名和一些示例代码。

对于UI自动化,也有很多地方可以从大量的示例开始。其中之一是http://blogs.msdn.com/b/winuiautomation/。

还要注意,它们在功率和可用性方面没有可比性。如前所述,UI自动化更自然,Win32还允许您访问许多通过自动化无法达到的值。我认为UI自动化主要是只读的。

在外部应用程序中启用/禁用按钮很有趣。当我发现它经常起作用时,我想在一些受保护的商业产品上使用它(只是禁用了"pro"按钮),只是为了检查是否有额外的保护。也就是说,如果你想在你的应用程序中有这样的功能,知道用户总是可以使隐藏的元素可见或禁用的元素启用。