Blog Entry

试一下WinUI3

试一下WinUI3

Created
2022/04/01
Updated
2022/04/01

环境

  • Win10
  • Vs2022

准备

根据[文档][安装适用于 Windows 应用 SDK 的工具]的说明:

  • 在安装对话框的“工作负载”选项卡上,选择:
    • 通用 Windows 平台开发
      • 然后,在该工作负载的安装对话框的”安装详细信息”窗格中,确保选中”c++ (v143) 通用 Windows 平台工具”。
    • 用于 C# 应用开发的 .NET 桌面开发
      • 然后,在安装对话框的“安装详细信息”窗格中,选择“Windows 应用 SDK C# 模板”(位于列表底部)。
    • 用于 C++ 应用开发的 C++ 桌面开发
      • 然后,在安装对话框的“安装详细信息”窗格中,选择“Windows 应用 SDK C++ 模板”(位于列表底部)。
  • 在安装对话框的”单个组件”选项卡上的”SDK、库和框架”部分中,确保选择了 Windows 10 SDK (10.0.19041.0) 。

:::tip 注意勾选Windows 应用 SDK C# 模板,Windows 应用 SDK C++ 模板,否则后面新建项目的时候找不到. :::

新建项目

  1. 新建空白应用,已打包(桌面版中的WinUI 3)

  2. .csproj文件的<PropertyGroup>节中中加入:

<WindowsPackageType>None</WindowsPackageType>
  1. 下载并安装Microsoft.WindowsAppRuntime.Redist.1.0.0(并不知道有没有啥用)

  2. 编译并启动Unpacked版本

  3. 失败(启动不了)

“App2.exe”(CoreCLR: DefaultDomain): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Private.CoreLib.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\App2.dll”。已加载符号。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Runtime.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“c:\program files\microsoft visual studio\2022\professional\common7\ide\commonextensions\microsoft\hotreload\Microsoft.Extensions.DotNetDeltaApplier.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.IO.Pipes.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Linq.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Collections.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Console.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Threading.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Threading.Overlapped.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Security.AccessControl.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Security.Principal.Windows.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Runtime.InteropServices.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Security.Claims.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\Microsoft.Win32.Primitives.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Runtime.Loader.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\Microsoft.WindowsAppRuntime.Bootstrap.Net.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
“App2.exe”(CoreCLR: clrhost): 已加载“E:\xkyii\Code\xkexp\xkexp.cs\WinUI3\DesktopApp\build\App2\x86\Debug\net6.0-windows10.0.19041.0\win10-x86\System.Collections.Concurrent.dll”。已跳过加载符号。模块进行了优化,并且调试器选项“仅我的代码”已启用。
引发的异常:“System.Runtime.InteropServices.COMException”(位于 Microsoft.WindowsAppRuntime.Bootstrap.Net.dll 中)
程序“[3656] App2.exe”已退出,返回值为 2148734499 (0x80131623)。
  1. 唉.

参考