如何将面向ARM的.NET应用发布至微软应用商店?
解决.NET 6 WPF打包项目发布ARM版本时的"win-arm32未被识别"问题
问题场景
- 创建面向.NET 6.0的WPF应用程序
- 添加MSIX打包项目,将该WPF应用设为打包项目的"应用程序"并关联应用商店
- 尝试发布ARM版本时触发异常:
指定的运行时标识符“win-arm32”未被识别。
解决步骤
1. 替换为正确的ARM运行时标识符
.NET 6及更高版本对ARM平台的标准运行时标识符(RID)是win-arm64,win-arm32已不再被官方支持。需统一修改两个项目的配置:
- 打开WPF应用的
.csproj文件,添加或更新<RuntimeIdentifier>节点:
<PropertyGroup> <RuntimeIdentifier>win-arm64</RuntimeIdentifier> </PropertyGroup>
- 打开打包项目的
.wapproj文件,确保<RuntimeIdentifier>同样设置为win-arm64:
<PropertyGroup> <RuntimeIdentifier>win-arm64</RuntimeIdentifier> </PropertyGroup>
2. 修正发布配置
在Visual Studio发布向导中:
- 选择"目标运行时"时直接选择
ARM64选项,避免手动输入RID - 确认打包项目的"目标平台"与WPF应用保持一致,均为ARM64
3. 验证.NET SDK兼容性
确保已安装支持ARM64的.NET 6 SDK(版本6.0.100及以上),可通过以下命令检查:
dotnet --info
查看输出中是否包含win-arm64相关的运行时信息。
内容的提问来源于stack exchange,提问作者ispiro
相关产品推荐
相关产品推荐

