Electron打包图标修改失败问题

我在做Electron打包时,碰到一个问题,package.json 的配置:

json 复制代码
{
    "build": {
    "appId": "com.sample.xxxx",
    "productName": "xxxx",
    "copyright": "Copyright © 2016 xxxx",
    "compression": "store",
    "files": [...省略不写],
    "directories": {
      "output": "dist/${productName}"
    },
    "electronDownload": {
      "mirror": "https://npmmirror.com/mirrors/electron/"
    },
    "nsis": {
      "oneClick": false,
      "installerLanguages": [
        "zh_CN"
      ],
      "language": "2052",
      "perMachine": false,
      "shortcutName": "IWRadarGUI",
      "allowToChangeInstallationDirectory": true,
      "installerIcon": "build/icons/icon.ico",
      "uninstallerIcon": "build/icons/icon.ico"
    },
    "win": {
      "target": "nsis",
      "executableName": "xxxx",
      "signAndEditExecutable": false,  // 注意这个地方
      "icon": "build/icons/icon.ico"
    },
    "icon": "build/icons/icon.ico",
    "artifactName": "${productName}-${version}-setup.${ext}",
    "extraResources": [
      {
        "from": "src/static",
        "to": "static",
        "filter": []
      },
      {
        "from": "software/OspiTool_V3.0.1",
        "to": "OspiTool_V3.0.1",
        "filter": []
      }
    ]
  },
}

打包出来发现 win-unpacked 中的应用图标总是恢复默认,并没有按照自定义的图标显示。而安装包的图标是正常修改了的。因此可以断定,图标本身没有问题,是nsis或者win的问题。最终通过一行一行代码删除并重新打包无数次,测试发现:

"signAndEditExecutable": false, 这个字段值为false时会直接影响文件签名,导致图标也无法修改。

所以将它改为true,就可以了。

相关推荐
by组态几秒前
Ricon组态系统通信配置指南
前端·后端·物联网
可涵不会debug5 分钟前
LangChain 文本分割器详解:字符分割、Token 分割、硬约束递归分割实战
java·前端·数据库
掘金挖土8 分钟前
前端手摸手跑路之 AI 应用开发(四)
前端
LEE9 分钟前
Agent 的控制权,为什么正在回到模型手里?
前端·后端
沃夫上校10 分钟前
跨域这件事,其实浏览器在替你挡刀
前端·后端·nginx
十年一梦惊觉醒12 分钟前
快手视频发布助手,全自动视频发布带货工具
开发语言·前端·javascript
Solara12 分钟前
中文字体子集化实录:3.2MB → 200KB 的完整脚本、踩坑清单与三条反直觉经验
前端·css·架构
Htr_27 分钟前
Cortex 使用指南:开源 API 知识层
前端·数据库·人工智能·重构·计算机外设
计算机魔术师30 分钟前
Dario Amodei 发文呼吁 AI 行业放慢前沿速度并公布三步计划
前端
EatFan34 分钟前
前后端分离项目中 Token 到底应该怎么设计?Access Token + Refresh Token 实战
java·前端·后端