Electron-Builder 打包安装后自动运行程序

2026-08-28 184 浏览 0 评论

Electron 默认的配置是自动安装,且安装完成以后自动完成,用户不能选择安装的目录,用户体验就不怎么好。

想要的功能

  • 默认 Program Files 或 Program Files(x86)
  • 可以选择安装目录
  • 安装后自动运行程序

electorn-builder nsis 配置如下

{
    oneClick: false,
    perMachine: true,
    allowElevation: true,
    allowToChangeInstallationDirectory: true,
}

问题

查看 electron-builder 源码中的 nsis 脚本,设置 oneClick 为 false 后,是不能自动运行的。当 electron-builder 提供了自定义脚本的方式,我们可以自已定义 nsis 脚本来处理。

文档地址: https://www.electron.build/configuration/nsis#custom-nsis-script

脚本 installer.nsh

!macro customFinishPage
AutoCloseWindow true
Function StartApp
    ${if} ${isUpdated}
      StrCpy $1 "--updated"
    ${else}
      StrCpy $1 ""
    ${endif}
    ${StdUtils.ExecShellAsUser} $0 "$launchLink" "open" "$1"
FunctionEnd

Function .onInstSuccess
    Call StartApp
FunctionEnd

!macroend

把上面的脚本默认放到 build/install.nsh 中,重新打包,就可以了。

安装界面大概是这个样子:


发布评论

发布评论前请先 登录
0 评论
点赞
收藏

评论列表 0

暂无评论