Win11/10 全新开发,微软 Windows App SDK 1.0 预览版 3 发布:首支持 Win11 风格,非 MSIX 打包的 WinUI 3 应用部署

10 月 28 日消息,据 MSPoweruser 报道,微软近期发布了 Windows App SDK 1.0.0-Preview 3,这是一个工具包,使桌面应用程序开发人员能够使用现代 Windows UI、API 和平台功能构建应用程序。

下面是 Windows App SDK 1.0.0-Preview 3 更新内容

WinUI 3

获悉,Windows App SDK 1.0.0-Preview 3 将是首个支持 Windows 11 风格设计,另外主要的新功能是支持在没有 MSIX 打包的情况下部署 WinUI 3 应用程序。请查看 WinUI 3 未打包桌面应用程序的说明,以配置你的 WinUI 3 应用程序,支持未打包部署。

已知的问题:

  • 未打包的 WinUI 3 应用程序仅支持 Windows 版本 1909 及以后的版本。

  • 未打包的 WinUI 3 应用程序支持 x86 和 x64,arm64 支持将在下一个稳定版本中添加。

  • 未打包的应用程序需要 VS 2019 或 VS 2022 的单项目 MSIX 打包工具。

  • 在未打包的应用程序中,你可能会收到安装.NET 3.5 的提示;如果有,你可以忽略它。

  • 一些 API 目前在未打包的应用程序中不被支持。微软目标是在下一个稳定版本中解决这个问题。下面是几个例子:

ApplicationData

StorageFile.GetFileFromApplicationUriAsync

ApiInformation (在 Windows 10 上不支持)

Package.Current

  • ListView、CalendarView 和 GridView 控件正在使用不正确的样式,目标是在下一个稳定版本中修复这个问题。

欲了解更多信息或开始使用 WinUI 开发,请参见:

Windows UI 3 Library (WinUI)

Get started developing apps with WinUI 3

其他限制和已知问题

  • 在 Windows 10 版本 1809 上不支持未打包的应用程序:目标是在下一个稳定版本中解决这个问题。

  • 如果没有安装 C++ UWP 工具,C#Single-project MSIX 应用程序不能编译。如果你有一个 C#Single-project MSIX 项目,你需要安装 C++(v14x)通用 Windows 平台(UWP)工具的可选组件。

  • 这个版本为 C#和 C++ 项目引入了空白应用程序,打包(WinUI 3 桌面版)模板。这些模板使你能够将应用程序构建成一个 MSIX 包,而不需要使用一个单独的打包项目。在这个版本中,这些模板有一些已知的问题。

在重启 VS 之前缺少发布菜单项:在 VS 2019 和 VS 2022 中使用空白应用,打包(WinUI 3 桌面版)项目模板创建新应用时,发布项目的命令不会出现在菜单中,直到你关闭并重新打开 Visual Studio。

使用 Single-project MSIX 打包向 C++ 应用程序添加 C++ 静态/动态库项目引用时出错:Visual Studio 显示错误,由于项目类型不兼容,无法将项目作为引用添加。

在类库项目中引用自定义用户控件时出错:应用程序将崩溃,错误是系统无法找到指定的路径。

Visual Studio 2019 的 C#模板:当你试图构建项目时,你会遇到这样的错误。“该项目不知道如何运行配置文件项目名称”。为了解决这个问题,请安装 Single-project MSIX 打包工具扩展。

Visual Studio 2019 和 Visual Studio 2022 的 C#模板:当你试图在开发计算机上运行或调试你的项目时,你会遇到以下错误。“该项目需要在调试前部署。请在配置管理器中启用部署”。要解决这个问题,请在配置管理器中为你的项目启用部署。有关详细说明,请参阅使用 C#和 Windows App SDK 1.0 Preview 2 创建 WinUI 3 桌面应用程序的说明。

适用于 Visual Studio 2022 年 17.0 版本的 C++ 模板,直至 Preview 4: 在你第一次尝试运行项目时,你会遇到以下错误。“出现了部署错误”。要解决这个问题,请第二次运行或部署你的项目。这个问题将在 Visual Studio 2022 版 17.0 预览版中得到修复。

  • 不支持任何 CPU 的构建配置:当将 Windows App SDK 添加到支持任意 CPU 的现有.NET 应用程序或组件时,你必须指定所需的架构:x86、x64 或 arm64。

  • 使用 1.0 Preview 3 的 C#项目必须使用以下.NET SDK:如果你使用 Visual Studio 2019 的 16.11 版,则使用.NET 5 SDK 5.0.400 或更高版本。

  • 如果你想对 DispatcherQueue.TryEnqueue 方法进行 co_await,请使用 Windows Implementation Library (WIL) 中的 resume_foreground 辅助函数:

1 添加对 Microsoft.Windows.ImplementationLibrary NuGet 包的引用。

2 在你的代码文件中添加#include <wil/cppwinrt.h> 语句。

3 使用 wil::resume_foreground (your_dispatcher); 到 co_await 结果。

阅读微软更多内容并在这里下载。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注