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,就可以了。

相关推荐
用户新30 分钟前
V8引擎 精品漫游指南--Ignition篇(下 一) 动态执行前的事情
前端·javascript
@PHARAOH2 小时前
WHAT - GitLens vs Fork
前端
yqcoder2 小时前
前端性能优化:如何减少重绘与重排?
前端·性能优化
洋子3 小时前
Yank Note 系列 13 - 让 AI Agent 进入笔记工作流
前端·人工智能
wenzhangli75 小时前
Ooder A2UI 核心架构深度解析:WEB 拦截层的设计与实现
前端·架构
前端百草阁6 小时前
【前端性能优化全链路指南】从开发编写到构建运行的多维度实践
前端·性能优化
女生也可以敲代码6 小时前
AI时代下的50道前端开发面试题:从基础到大模型应用
前端·面试
ZhengEnCi6 小时前
M5-markconv自定义CSS样式指南 📝
前端·css·python
IT_陈寒6 小时前
SpringBoot自动配置的坑差点让我加班到天亮
前端·人工智能·后端
xingpanvip6 小时前
星盘接口开发文档:星相日历接口指南
android·开发语言·前端·css·php·lua