【问题标题】:referencing System.Windows.Automation引用 System.Windows.Automation
【发布时间】:2010-11-30 23:04:36
【问题描述】:

我想尝试通过 BugSlayer 提供的一些自动化工具,但在引用时遇到了问题。

我试图弄清楚如何在 Visual Studio 中引用 System.Windows.Automation 库。我安装了 .NET Framework v3.5 和 VS 2008,但 UIAutomationClient 和 System.Windows.Automation 均未在 .NET 或 COM 选项卡中作为参考选项出现。

如果我通过命令提示符导航到C:\WINDOWS\assembly\GAC_MSIL\UIAutomationClient\3.0.0.0__31bf3856ad364e35,我可以看到 dll,但如果我在 Visual Studio 中浏览到程序集,我实际上无法访问 dll。

我是否忽略了一种将其包含在我的项目中的简单方法?

【问题讨论】:

    标签: c# .net dll automation


    【解决方案1】:

    UIAutomationClient.dll 位于此文件夹中:

    C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0
    

    如果在Add Reference->.Net 选项卡中找不到,则必须使用Browse 选项卡转到给定路径,然后添加程序集(右键单击References,选择add reference ,点击browse标签)。

    【讨论】:

    • 该目录在我的系统上只有一个 dll,而不是我正在寻找的那个。但是,“en”文件夹包含 UIAutomationClient 的 XML 文件。我能够使用 cmd 窗口将 dll 从 GAC 手动复制到我可以访问它的地方......它似乎可以这样做。但我无法使用资源管理器。
    • 在这种情况下,您可能需要重新安装 .net 3.5 和 vs 2008
    • 这对我不起作用(该文件夹中没有这样的 DLL),但 @sharmila 证明的答案有效
    【解决方案2】:

    在 .net 选项卡下添加 Uiautomationclient dll

    【讨论】:

      【解决方案3】:

      我正在使用 Visual Studio Express 2015,并针对 .NET 4.5。没有一个答案对我有用。这是我必须做的(经过几分钟查看添加引用-> 程序集-> 框架并玩弄。我添加的参考是“UIAutomationClient”。(我的列表中没有任何 System.Windows.Automation”程序集. 请注意,我还看到程序集“UIAutomationProvider”、“UIAutomationTypes”和“UIAutomationClientsideProviders”,但我没有尝试任何这些。)

      无论如何,一旦我添加了对“UIAutomationClient”的引用,那么using System.Windows.Automation 实际上就可以正常工作了。

      【讨论】:

        【解决方案4】:

        在 VS 2015 中,您需要引用 UIAutomationProvider dll 才能使用此 Provider 命名空间。只需在您的引用文件夹中添加对此 dll 的引用。它在 .NET 的框架程序集中可用。

        【讨论】:

          【解决方案5】:

          对于 .Net coreapp 3.1,我的解决方法是将 UseWPF 添加到 csproj 文件的 PropertyGroup 中。

          <UseWPF>true</UseWPF>

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-06-05
            • 2014-07-14
            • 1970-01-01
            • 2015-11-19
            • 1970-01-01
            • 2012-03-06
            • 2015-04-05
            相关资源
            最近更新 更多