使用MSIX Packaging Tool工具修改msix程序包
正文
前言
MSIX Packaging Tool 使用户和 IT 管理员能够将 Windows 应用重新打包为 MSIX 格式,方便用户分享,MSIX 包可在 Windows 11 和 Windows 10 系统中安装。该软件提供了一个交互式用户界面和一个用于转换的命令行。
修改步骤
1、获取MSIX Packaging Tool
Windows10通过应用商店获取:MSIX Packaging Tool - Microsoft Store 应用程序
2、打开下载好的工具选择程序包编辑器。
3、选择我们需要修改的程序包。
比如我们要修改程序包要求的最小系统版本,我们可以修改清单文件(即AppxManifest.xml文件)。
签名打包
修改完成后我们需要通过签名并打包,这样生成的新msix文件才能被顺利安装。
对于个人的话一般选择第二种签名方式。
1、生成.pfx证书文件
可以参照微软官方文档:为程序包签名创建证书 - MSIX | Microsoft Learn
1、确定你的打包应用的主体
若要使用证书给你的应用包签名,证书中的“主体”必须匹配应用清单中的“发布者”部分。
例如,你应用的 AppxManifest.xml 文件中的“身份”部分应如下所示:
<Identity Name="Contoso.AssetTracker" Version="1.0.0.0" Publisher="CN=Contoso Software, O=Contoso Corporation, C=US"/>
在这种情况下,“发布者”为“CN = Contoso Software,O = Contoso Corporation,C = US”,创建你的证书时将需要这些。
2、在powershell下使用 New-SelfSignedCertificate 创建证书
基于上一示例中的 AppxManifest.xml 文件,你应该使用下面的语法创建证书。 在提升的 PowerShell 提示符中:
New-SelfSignedCertificate -Type Custom -Subject "CN=Contoso Software, O=Contoso Corporation, C=US" -KeyUsage DigitalSignature -FriendlyName "Your friendly name goes here" -CertStoreLocation "Cert:\CurrentUser\My" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.3", "2.5.29.19={text}")
请注意以下有关某些参数的详细信息:
-
KeyUsage:此参数定义证书的用途。 对于自签名证书,此参数应设置为 DigitalSignature。
-
TextExtension:此参数包括以下扩展的设置:
-
扩展密钥用法 (EKU) :此扩展指示可以使用认证公钥的其他目的。 对于自签名证书,此参数应包含扩展字符串 “2.5.29.37={text}1.3.6.1.5.5.7.3.3”,指示证书将用于代码签名。
-
基本约束:此扩展指示证书是否为证书颁发机构 (CA) 。 对于自签名证书,此参数应包含扩展字符串 “2.5.29.19={text}”,指示证书是最终实体 (不是 CA) 。
-
运行此命令后,证书将被添加到本地证书存储中,如“-CertStoreLocation”参数中指定。 该命令的结果还将生成证书的指纹。
3、导出证书
若要将本地存储中的证书导出到个人信息交换 (PFX) 文件中,请使用 Export-PfxCertificate cmdlet。
使用 Export-PfxCertificate 时,你必须创建并使用密码或使用“-ProtectTo”参数指定哪些用户或组可以不使用密码访问该文件。 注意,如果不使用“-Password”或“-ProtectTo”参数,将显示错误。
使用密码:
$password = ConvertTo-SecureString -String <Your Password> -Force -AsPlainText Export-PfxCertificate -cert "Cert:\CurrentUser\My\<Certificate Thumbprint>" -FilePath <FilePath>.pfx -Password $password
其中<Certificate Thumbprint>为上一步骤中生成的证书指纹,需要替换填写。<FilePath>替换为实际想要的输出路径。
至此.pfx证书文件生成完毕。
2、打包
选择刚生成的证书,填写生成证书时设置的密码,点击保存即可生成修改后的msix程序包。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
2021-08-17 使用matplotlib缺失中文字体的解决方案