通过在 WPF 项目上安装 WindowsAppSDK 库,可以让 WPF 使用上 Win10 及以上版本提供的 Windows Runtime 强大的 API 集和使用上更多的黑科技。本文记录在安装 WindowsAppSDK 库之后,项目生成失败,提示 NETSDK1082 和 NETSDK1112 错误的问题,和修复的方法

给 WPF 安装上 WindowsAppSDK 库,可以编辑 csproj 项目文件,添加如下代码进行安装

  <ItemGroup>
<PackageReference Include="Microsoft.WindowsAppSDK" Version="1.1.5" />
</ItemGroup>

安装完成之后,需要给定的需要支持的系统版本,和对应的平台。由于 WindowsAppSDK 是继承 WinUI 或者说是 UWP 的写法,没有提供 Any CPU 的方式,是需要进行平台区分的,这就是为什么需要给定对应的平台的原因。编辑后的 csproj 项目文件内容如下

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows10.0.19041</TargetFramework>
<Platform>x86;x64</Platform>
<Nullable>enable</Nullable>
<UseWPF>true</UseWPF>
</PropertyGroup> <ItemGroup>
<PackageReference Include="Microsoft.WindowsAppSDK" Version="1.1.5" />
</ItemGroup> </Project>

才是运行构建提示错误,错误代码大概如下

1>C:\Program Files\dotnet\sdk\6.0.402\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(430,5): error NETSDK1082: There was no runtime pack for Microsoft.WindowsDesktop.App.WPF available for the specified RuntimeIdentifier 'win10-arm'.
1>C:\Program Files\dotnet\sdk\6.0.402\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(430,5): error NETSDK1082: There was no runtime pack for Microsoft.WindowsDesktop.App.WPF available for the specified RuntimeIdentifier 'win10-arm-aot'.
1>C:\Program Files\dotnet\sdk\6.0.402\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(430,5): error NETSDK1112: The runtime pack for Microsoft.Windows.SDK.NET.Ref was not downloaded. Try running a NuGet restore with the RuntimeIdentifier 'any'.

这是因为没有给定 RuntimeIdentifiers 从而才会提示 error NETSDK1082: There was no runtime pack for Microsoft.WindowsDesktop.App.WPF available for the specified RuntimeIdentifier 'win10-arm'error NETSDK1082: There was no runtime pack for Microsoft.WindowsDesktop.App.WPF available for the specified RuntimeIdentifier 'win10-arm-aot' 错误的。因为本身 WPF 就不支持 win10-armwin10-arm-aot 版本

修复方法是在 csproj 项目文件添加 RuntimeIdentifiers 的定义,如以下代码

  <RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>

由于我没有 win10-arm64 版本的系统,我就只采用 x86 和 x64 的。然后再加上能支持的最小系统版本,如 10.0.17763.0 版本

完成编辑的 csproj 项目文件代码如下

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows10.0.19041</TargetFramework>
<Platform>x86;x64</Platform>
<Nullable>enable</Nullable>
<UseWPF>true</UseWPF>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>
</PropertyGroup> <ItemGroup>
<PackageReference Include="Microsoft.WindowsAppSDK" Version="1.1.5" />
</ItemGroup> </Project>

修复 WPF 安装 WindowsAppSDK 库构建失败 NETSDK1082 和 NETSDK1112 找不到 win10-arm 失败的更多相关文章

  1. python 安装 0x000007b错误解决及VC++ 安装第三方库报红

    dll 版本不对 dll 可能是 32 位和 64 位的 ,安装的可能不对 下载 DirectX_DLL修复工具v3.5增强版 进行修复 VC++ 安装第三方库报红问题 使用 VS 2017 或者 V ...

  2. Python3.7安装pyaudio库报错问题及修复

    本人今天在使用python编写语音相关项目是需要引用pyaudio库,结果发现引用失败,刚开始报错内容如下: 说让我升级pip,然后我就按照提示升级了pip,然后又再次尝试安装pyaudio库,然后还 ...

  3. pycharm安装第三方库失败module 'pip' has no attribute 'main'

    用的pycharm2017.3,新创建一个项目,在安装appium-python-client时报错module 'pip' has no attribute 'main'.通过强大的度娘,知道是pi ...

  4. 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) C#中缓存的使用 C#操作redis WPF 控件库——可拖动选项卡的TabControl 【Bootstrap系列】详解Bootstrap-table AutoFac event 和delegate的分别 常见的异步方式async 和 await C# Task用法 c#源码的执行过程

    反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑)   背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ...

  5. WPF 线程:使用调度程序构建反应速度更快的应用程序

    原文:WPF 线程:使用调度程序构建反应速度更快的应用程序 作者:Shawn Wildermuth 原文:http://msdn.microsoft.com/msdnmag/issues/07/10/ ...

  6. linux下编译安装boost库

    linux下编译安装boost库 linux下编译安装boost库 1.下载并解压boost 1.58 源代码 下载 解压 2.运行bootstrap.sh 3.使用b2进行构建 构建成功的提示 4. ...

  7. ubuontu16.04安装Opencv库引发的find_package()错误信息处理及其简单使用

    在安装完Opencv库之后,打算测试一下Opencv库是否成功安装.下面是用的例子对应的.cpp代码以及对应的CMakeLists.txt代码: .cpp文件: #include <stdio. ...

  8. CMake--静态库与动态库构建

    小结内容 建立一个静态库和动态库,提供 HelloFunc 函数供其他程序编程使用, HelloFunc 向终端输出Hello World 字符串. 安装头文件与共享库. 1.代码与CMakeList ...

  9. pip安装第三方库镜像源选择

    在pip安装时,有些库速度及其缓慢从而导致失败,可以通过更改镜像源的方式来安装. 我在安装的时候使用了清华的镜像源,格式如下: 想要安装什么库就在后面替换即可.

  10. python安装curses库

    windows系统在安装curses库时,如果直接使用conda或者pip安装,总是失败,到如下网址直接下载.whl文件,然后再用pip安装即可. https://www.lfd.uci.edu/~g ...

随机推荐

  1. 【LeetCode刷题】912. 排序数组

    912. 排序数组(点击跳转LeetCode) 给你一个整数数组nums,请你将该数组升序排列. 示例 1: 输入:nums = [5,2,3,1] 输出:[1,2,3,5] 示例 2: 输入:num ...

  2. win7笔记本、台式机装centos7过程记录

    1.国内镜像网站下载centos的iso文件  链接点我: 2.找个u盘,格式化为NTFS格式,这样才能传4G以上大小的文件 3.iso直接复制到u盘是不行的,必须做启动盘.下载个ultra做,官网地 ...

  3. [Java]Socket套接字(网络编程入门)

    [版权声明]未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://blog.csdn.net/m0_69908381/article/details/129907893 出自[进步* ...

  4. springboot mybatis 多数据源整合

    1.在application.properties中配置两个数据库: # db01 database spring.datasource.db01.jdbc-url=jdbc:oracle:thin: ...

  5. Oracle 触发器迁移至KingbaseES常见的问题

    oracle数据库的触发器迁移到KingbaseES的时候经常会出现一下两类错误: 1.SQL 错误 [42809]: 错误: "xxxxxxxx" 是一个视图.Detail: 视 ...

  6. 2021 年 25 大 DevOps 工具(上)

    DevOps 正在改变全球软件开发的状态,DevOps 正以某种形式有效地提高提高全球软件公司的上市速度.可销售性.创新和产品质量.2021 年是 DevOps 的重要一年.由于 DevOps 跨越开 ...

  7. #博弈论,贪心#AT2376 [AGC014D] Black and White Tree

    题目传送门 分析 考虑到先手放一个白点后手必将在相邻位置放一个黑点, 如果没有合适的位置放黑点先手必胜,也就是问是否存在完美匹配, 直接从叶子节点到根贪心匹配即可 代码 #include <cs ...

  8. #树链剖分,树上启发式合并#CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths

    题目 分析 考虑回文串当且仅当最多有一个字母出现奇数次, 可以记录某个二进制状态的最大深度, 一种就是点\(x\)到某个点,另一种就是经过点\(x\)的一条路径 在\(x\)的子树中递归实现,重儿子保 ...

  9. IT的贵与慢

    本文于2019年7月24日完成,发布在个人博客网站上. 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来. 笔记而已,没有逻辑. 贵与慢,一方面是事实,另一方面是偏见. 流 ...

  10. OpenHarmony Meetup 深圳站招募令

      OpenHarmony Meetup城市巡回深圳站火热来袭!! 日期:2023年10月15日14:00 地点:深圳市福田区上步路中路1003号 深圳市科学馆 与OpenHarmony技术大咖近距离 ...