gpt4 book ai didi

c# - UI 自动化是否有任何依赖项?

转载 作者:太空宇宙 更新时间:2023-11-03 12:31:44 25 4
gpt4 key购买 nike

我有一个 Windows 应用程序,它根据配置从屏幕上捕获详细信息。我正在使用 UI Automation 从屏幕上捕获细节。在安装了 Visual Studio 的开发人员机器上一切正常。当我在另一个只安装了 .NET Framework 4.5 的系统上运行相同的应用程序时,它开始表现异常,并且无法检测到子元素。

我的问题是为什么它在安装了 Visual Studio 和 .NET Framework 的开发人员机器上运行良好。有什么不同?就先决条件而言,我们还缺少什么吗? UI 自动化的任何依赖项或我们缺少的任何库..?

提前致谢 - 请帮助我。

最佳答案

它看起来像是围绕原生 UIAutomationCore.dll 的 .NET 包装器中的一个已知错误(是的,它的核心不是 .NET)。并且它包含在 WinVista+ 中(.NET Framework 甚至将它添加到 WinXP 中)。

这是一个C# example如何从 C# 使用 native COM API (UIAutomationCore.dll)。只需在此处复制代码:

using System;
using interop.UIAutomationCore;

namespace PrintDesktopUiaElementNameViaCom
{
class PrintDesktopUiaElementNameViaComProgram
{
static void Main(string[] args)
{
// Instantiate the UIA object:
IUIAutomation _automation = new CUIAutomation();
// Get the root element
IUIAutomationElement rootElement = _automation.GetRootElement();
// Get its name
string rootName = rootElement.CurrentName;
Console.WriteLine(
"The root automation element's name should be 'Desktop'.");
Console.WriteLine("The actual value is: '{0}'", rootName);
}
}
}

关于c# - UI 自动化是否有任何依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42501082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com