electron 打包兼容 win7 踩坑筆記

 

問題:.項目原electron 在win10上運行正常,在win7 下報以下錯誤      # 項目原始版本 { "electron": "^25.3.0", "electron-builder": "^24.4.0",}

 

解決方案:降低版本 指定版本爲: electron v21.4.4 、nodejs v12.16.2 

electron : https://registry.npmmirror.com/binary.html?path=electron/21.4.4
node:      https://nodejs.org/dist/v12.16.0/
 
Electron-Builder打包時[中文路徑]報錯could not find: “C:\Users\XX\AppData\Local\Temp\t-bDWVX6\0-messages.nsh”
# 錯誤日誌
Output:
Command line defined: "APP_ID=com.electron.{我的項目名稱}"
Command line defined: "APP_GUID=c587bd21-8cd2-5b34-93a3-ad3ca404cd06"
Command line defined: "UNINSTALL_APP_KEY=c587bd21-8cd2-5b34-93a3-ad3ca404cd06"
Command line defined: "PRODUCT_NAME={我的項目名稱}"

# 項目中node_modules
//node_module/app-builder-lib/out/targets/nsis/NsisTarget.js
async executeMakensis(defines, commands, script) {
    const args = this.options.warningsAsErrors === false ? [] : ["-WX"];
    //此處新增 關鍵位置
    args.push("-INPUTCHARSET", "UTF8");
    //結束
    for (const name of Object.keys(defines)) {
      const value = defines[name];

      if (value == null) {
        args.push(`-D${name}`);
      } else {
        args.push(`-D${name}=${value}`);
      }
    }
————————————————
版權聲明:本文爲CSDN博主「Teastears」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/kyq0417/article/details/111266776
https://blog.csdn.net/qq_19297987/article/details/119954579

https://blog.csdn.net/cctvcqupt/article/details/87904368

開始打包
electron-builder --win

打包過程中可能遇到的問題

打包時下載electron-v.xxxx.zip文件失敗
解決辦法:直接在淘寶的文件庫下載對應版本和打包平臺的文件,下載完成後放在C:\Users\Administrator\AppData\Local\electron\Cache這個目錄下

打包時下載winCodeSign-v.xxx.7z文件失敗
下載地址:https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.5.0/winCodeSign-2.5.0.7z

下載完解壓放到C:\Users\Administrator\AppData\Local\electron-builder\Cache\winCodeSign目錄下

打包時下載nsis-v.xxx.7z文件失敗
下載地址:https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-3.0.4.1/nsis-3.0.4.1.7z
下載完解壓放到C:\Users\Administrator\AppData\Local\electron-builder\Cache\nsis

打包時下載nsis-resources-v.xxx.7z文件失敗
下載地址:https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-resources-3.4.1/nsis-resources-3.4.1.7z
下載完解壓放到C:\Users\Administrator\AppData\Local\electron-builder\Cache\nsis\nsis-resources-3.4.1

第2、3、4步下載的文件如果需要其他版本,直接修改鏈接中的版本號即可

 

  

 

electron-builder 打包常見錯誤

參考地址 https://blog.csdn.net/qq_19297987/article/details/119954579
       https://blog.csdn.net/cctvcqupt/article/details/87904368

開始打包
electron-builder --win

打包過程中可能遇到的問題

打包時下載electron-v.xxxx.zip文件失敗
解決辦法:直接在淘寶的文件庫下載對應版本和打包平臺的文件,下載完成後放在C:\Users\Administrator\AppData\Local\electron\Cache這個目錄下

打包時下載winCodeSign-v.xxx.7z文件失敗
下載地址:https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.5.0/winCodeSign-2.5.0.7z

下載完解壓放到C:\Users\Administrator\AppData\Local\electron-builder\Cache\winCodeSign目錄下

打包時下載nsis-v.xxx.7z文件失敗
下載地址:https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-3.0.4.1/nsis-3.0.4.1.7z
下載完解壓放到C:\Users\Administrator\AppData\Local\electron-builder\Cache\nsis

打包時下載nsis-resources-v.xxx.7z文件失敗
下載地址:https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-resources-3.4.1/nsis-resources-3.4.1.7z
下載完解壓放到C:\Users\Administrator\AppData\Local\electron-builder\Cache\nsis\nsis-resources-3.4.1

第2、3、4步下載的文件如果需要其他版本,直接修改鏈接中的版本號即可
package.json |  參考地址: https://www.cnblogs.com/lizhao123/p/14355242.html

 

{
  "name": "demo",
  "version": "0.0.2",
  "author": "<[email protected]>",
  "build": {  // electron-builder配置
    "productName":"xxxx",//項目名 這也是生成的exe文件的前綴名
    "appId": "xxxxx",//包名  
    "copyright":"xxxx",//版權  信息
    "compression": "store", // "store" | "normal"| "maximum" 打包壓縮情況(store 相對較快),store 39749kb, maximum 39186kb
    "directories": {
        "output": "build" // 輸出文件夾
    }, 
    "asar": false, // asar打包
    "extraResources":  { // 拷貝dll等靜態文件到指定位置
        "from": "./app-update.yml",
        "to": "./b.txt"
    },
    "win": {  
        "icon": "xxx/icon.ico"//圖標路徑,
        "extraResources":  { // 拷貝dll等靜態文件到指定位置(用於某個系統配置)
            "from": "./app-update.yml",
            "to": "./b.txt"
        }
    },
    "nsis": {
        "oneClick": false, // 一鍵安裝
        "guid": "xxxx", //註冊表名字,不推薦修改
        "perMachine": true, // 是否開啓安裝時權限限制(此電腦或當前用戶)
        "allowElevation": true, // 允許請求提升。 如果爲false,則用戶必須使用提升的權限重新啓動安裝程序。
        "allowToChangeInstallationDirectory": true, // 允許修改安裝目錄
        "installerIcon": "./build/icons/aaa.ico", // 安裝圖標
        "uninstallerIcon": "./build/icons/bbb.ico", //卸載圖標
        "installerHeaderIcon": "./build/icons/aaa.ico", // 安裝時頭部圖標
        "createDesktopShortcut": true, // 創建桌面圖標
        "createStartMenuShortcut": true, // 創建開始菜單圖標
        "shortcutName": "xxxx" // 圖標名稱
    }
  }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章