本指南介绍如何创建 MSIX 包,以便使用 Windows API 分发 Electron 应用。
先决条件
- 已完成 开发环境设置
- 已验证您的应用程序是否正常运行
npm start
准备打包
在打包之前,请将生成工具配置为从最终生成中排除临时文件:
-
.winapp/文件夹 winapp.yaml- 证书文件 (
.pfx) - 调试符号 (
.pdb) - C# 生成的构建产物(
obj/,bin/文件夹) - MSIX 包 (
*.msix)
验证属性 appxmanifest.xmlExecutable 是否指向正确的 .exe 文件。
选项 1:直接使用 winapp CLI(建议)
此方法为你提供了更多的掌控权,并且适用于任意的 Electron 打包器。
构建 Electron 应用程序
npx electron-forge package
这会在 ./out/ 文件夹中创建生产版本。
创建 MSIX 包
npx winapp pack .\out\<your-app-folder> --output .\out --cert .\devcert.pfx --manifest .\appxmanifest.xml
将 <your-app-folder> 替换为 Electron Forge 创建的实际文件夹名称(例如 my-windows-app-win32-x64)。
小窍门
为方便起见,请将以下命令添加到 package.json 脚本:
{
"scripts": {
"package-msix": "npx electron-forge package && npx winapp pack ./out/my-windows-app-win32-x64 --output ./out --cert ./devcert.pfx --manifest appxmanifest.xml"
}
}
选项 2:使用 Electron Forge MSIX Maker
如果您已经在使用 Electron Forge,可以直接集成 MSIX 打包功能。
安装 MSIX Maker
npm install --save-dev @electron-forge/maker-msix
配置 forge.config.js
module.exports = {
makers: [
{
name: '@electron-forge/maker-msix',
config: {
appManifest: '.\\appxmanifest.xml',
windowsSignOptions: {
certificateFile: '.\\devcert.pfx',
certificatePassword: 'password'
}
}
}
],
};
更新 appxmanifest.xml
更新 Executable 指向 app 文件夹的路径:
<Applications>
<Application Id="myApp"
Executable="app\my-app.exe"
EntryPoint="Windows.FullTrustApplication">
</Application>
</Applications>
创建 MSIX 包
npm run make
将创建 MSIX 包于 ./out/make/msix/。
安装和测试 MSIX
安装开发证书(一次性安装,以管理员身份运行):
npx winapp cert install .\devcert.pfx
安装 MSIX 包:
Add-AppxPackage .\my-windows-app.msix
你的应用将显示在“开始”菜单中。
分布选项
Microsoft Store
提交应用以获取最广泛的分发和自动更新。 了解详细信息: 将应用发布到 Microsoft 应用商店。
直接下载
在网站上托管 MSIX 包。 使用受信任的证书颁发机构 (CA) 证书对其进行签名。
企业分发
通过Company Portal(Intune)、直接下载或旁加载进行分发。 了解详细信息: 在应用商店外分发应用。
应用安装程序
为自动更新创建一个 .appinstaller 文件。 了解详细信息: 应用安装程序文件概述。