包裝你的 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"
  }
}

選項二:使用 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 Store

直接下載

把 MSIX 套件放在你的網站上。 請用受信任的憑證授權中心(CA)憑證簽署。

企業分發

可透過 Company Portal(Intune)、直接下載或側載分發。 了解更多: 在商店外發佈應用程式

應用程式安裝程式

建立一個用於自動更新的 .appinstaller 檔案。 了解更多: 應用程式安裝程式檔案總覽