【发布时间】:2012-02-29 03:18:08
【问题描述】:
我一直在努力解决这个问题,因此我们将不胜感激。我在客户端中使用 UI 自动化来监视和报告另一个应用程序中的用户选择。我让代码在 Server 2003 上完美运行。然而,在 Server 2008 上,我正在监视的控件被报告为数据网格中的项目或列表。这是非常随机的,我注意到如果我继续在控件中选择行,最终控件将被报告为数据网格。在服务器 2003 上,它始终被报告为数据网格,因此我的代码运行良好。
我正在使用 Visual Studio 2010 C# 进行开发。
更新:
我想提一下,我使用 UI Spy 工具得到了相同的结果,因此源代码与这种特定情况无关。
【问题讨论】:
-
没有看到源代码,这将是纯粹的推测,如安全、UAC、高/低特权进程和其他东西......
-
我使用 UI Spy 工具 (msdn.microsoft.com/en-us/library/ms727247.aspx) 得到了相同的结果,因此在这种情况下不需要源代码。
-
那么目标的来源是相当相关的......
-
首先,感谢您抽出宝贵时间发表评论。如果目标来源是指我正在监控的应用程序,那么它就是第三方应用程序。除了通过自动化能看到的东西外,我对它的发展了解不多。我相信包含控件的窗口是 MDI。是否需要更多信息来帮助解决此问题?
-
恕我直言,您看到的原因很可能是由于向较新的 Windows 版本添加了多种安全措施以及目标应用程序的实现方式(它是基于 .NET 吗?是 Windows 的控件吗?内置的一个或一些第 3 方控件?)...我不知道如何在不将目标应用程序分开(在源代码级别和/或使用调试器)的情况下诊断这个...也许有人更熟练或者有你描述的类似经历可以帮助解决这个问题......
标签: c# user-interface automation ui-automation microsoft-ui-automation