【问题标题】:How to add UIAutomationClient.dll and UIAutomationTypes.dll to .Net Core 5.0 project?如何将 UIAutomationClient.dll 和 UIAutomationTypes.dll 添加到 .Net Core 5.0 项目?
【发布时间】:2023-03-06 21:30:01
【问题描述】:

由于没有可用的nuget包,如何在.NET 5.0项目中使用UIAutomationClient.dllUIAutomationTypes.dll

我正在尝试将 .NET Framework 4.8 项目转换为 .NET 5.0

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
    <PropertyGroup>
        <OutputType>WinExe</OutputType>
        <TargetFrameworks>net48;net5.0-windows</TargetFrameworks>
        <UseWindowsForms>true</UseWindowsForms>
        <LangVersion>9.0</LangVersion>
    </PropertyGroup>
</Project>

【问题讨论】:

  • .Net Core 或 .Net 5(.Net Core 5.0 不存在)?您的项目文件&lt;Project Sdk="Microsoft.NET.Sdk"&gt;&lt;Project Sdk="Microsoft.NET.Sdk.WindowsDesktop"&gt; 中有什么?如果是前者,你在&lt;TargetFrameworks&gt; 中有net5.0-windows 吗? UI 自动化相关的程序集不是跨平台的,而是特定于 Windows 的。
  • 我更新了问题(.NET 5.0 而不是 .Net core 5.0)我使用 net5.0-windows
  • github.com/dotnet/core/issues/3283 看起来您需要对 windowsdesktop sdk 的引用才能在 .net 核心项目中使用 uiautomation 库。
  • 我迁移到github.com/FlaUI/FlaUI,效果很好

标签: c# visual-studio ui-automation


【解决方案1】:

这个 .csproj 足以在 net5 中使用 System.Windows.Automation (UIAutomation)

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net5.0-windows</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <FrameworkReference Include="Microsoft.WindowsDesktop.App.WPF"/>
  </ItemGroup>
</Project>

【讨论】:

  • Microsoft.WindowsDesktop.App 就够了。
猜你喜欢
  • 2020-02-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-08
  • 2021-05-22
  • 2021-08-20
  • 2019-05-11
相关资源
最近更新 更多