通过


打包你的 Electron 应用程序进行分发

本指南介绍如何创建 MSIX 包,以便使用 Windows API 分发 Electron 应用。

先决条件

准备打包

在打包之前,请将生成工具配置为从最终生成中排除临时文件:

  • .winapp/ 文件夹
  • winapp.yaml
  • 证书文件 (.pfx
  • 调试符号 (.pdb
  • C# 生成的构建产物(obj/bin/ 文件夹)
  • MSIX 包 (*.msix

验证属性 appxmanifest.xmlExecutable 是否指向正确的 .exe 文件。

此方法为你提供了更多的掌控权,并且适用于任意的 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 文件。 了解详细信息: 应用安装程序文件概述