创建未签名的 MSIX 包

从 Windows 11 开始,可以通过 PowerShell 安装应用,而无需对包进行签名。 此功能旨在让你更轻松地快速测试应用。 请勿使用此功能广泛分发应用。

创建未签名的包

未签名的包必须在清单文件中的 Identity 元素中包含特殊的 OID(组织 ID)值,否则不允许注册。 未签名的包永远不会具有与已签名的包相同的标识。 这可以防止未签名包与签名包的标识发生冲突,或进行标识欺骗。

下面是一个示例。

...
<Identity Name="NumberGuesserManifest"
  Publisher="CN=AppModelSamples, OID.2.25.311729368913984317654407730594956997722=1"
  Version="1.0.0.0" />
...

安装未签名的包

重要

在大多数情形中,你将需要以管理员身份运行 PowerShell。 另请参阅下面的详细信息。

  • 若要安装未签名的包,请将 -AllowUnsigned 标志传递给 Add-AppxPackage 命令。
  • 在大多数情况下,未签名的包将包含可执行内容;因此需要以管理员身份运行 PowerShell。 这是因为必须为所有用户安装包含可执行内容的未签名包。 由于这不仅仅是对当前用户的影响,因此它需要管理员权限。
  • 如果未签名的包仅包含非可执行内容(例如,当需要仅加载图像、资产和其他内容或脚本文件时),则需要管理员权限,并且非管理员可以安装该包。

下面是语法的示例。

Add-AppPackage -Path ".\MyEmployees.appx" -AllowUnsigned

当应用准备好分发时,应确保包已签名。 请务必删除特殊的 OID,并确保发布者名称与证书使用者名称相同。