NSIS 打包 Electron 生成exe安装包

每次文章都从0开始
从搭建开始 使用的是electron-vue 毕竟方便一点 如果只想安装electron 请参见我的另一个文章https://segmentfault.com/a/11...


开发目录: F:lee`
开发环境: windows10
IDE: phpstorm

安装electron

vue init simulatedgreg/electron-vue project3

cd project1
npm install //第一次安装的伙伴需要翻墙 如何翻墙请参加另一个文章(好像被和谐了 那就+我们的交流群 814270669 吧!)

NSIS 打包 Electron 生成exe安装包

编写一个页面

使用IDE打开随便编写一个页面
NSIS 打包 Electron 生成exe安装包

使用npm 构建安装包

npm run build

NSIS 打包 Electron 生成exe安装包

安装程序制作

下载NSIS软件,安装

下载地址:https://pan.baidu.com/s/1HrZz...

下载完毕打开 下一步 下一步 就行了 傻瓜式安装

NSIS新建脚本

点击软件左上角文件->选择新建脚本(向导)
NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包

到应用程序信息这里 填写的应用程序名称必须和你package.json里面配置的一样 否则你有自动更新的时候会安装一个另一个程序!
NSIS 打包 Electron 生成exe安装包
这里选择图标就行了
NSIS 打包 Electron 生成exe安装包

这里暂时默认就行了 后面出一个文章详细介绍这里
NSIS 打包 Electron 生成exe安装包

NSIS 打包 Electron 生成exe安装包

NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包

F:\lee\project3\build\win-unpacked\project3.exe
主程序就是 buildwin-unpacked的exe文件
NSIS 打包 Electron 生成exe安装包

NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包

选择 F:\lee\project3\build\win-unpacked
NSIS 打包 Electron 生成exe安装包

NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包
NSIS 打包 Electron 生成exe安装包

编译脚本

终于到了编译脚本了 如果按照上面的步骤执行 到这步会自动编译并且运行 如果没有自动编译点击顶部菜单栏的编译按钮
NSIS 打包 Electron 生成exe安装包

编译过程可能稍微有点长1-3分钟吧 编译完成之后会自动运行安装程序
NSIS 打包 Electron 生成exe安装包

友情提示

杀软报毒

electron做的软件会被某流氓杀软报毒 没办法解决 在这里给出一个解决办法
安装程序检测360是否运行 如果在运行就禁止安装
其中使用到一个dll插件 (FindProcDLL.dll)
官方下载地址:http://nsis.sourceforge.net/F...
作者提供的下载地址:https://pan.baidu.com/s/1EpJa...

下载完毕之后 放到NSIS目录下的 VNISEdit\Plugins 目录中
如果不知道目录 那就在桌面 右击VNISEdit 编译环境 选择打开所在目录 就可以看到了

在脚本最后加一句
编译完成后会后些方法:
一个是un.onInit ->卸载程序
一个是un.onUninstSuccess -> 卸载成功提示
.onInit 安装程序初始化

# 检测360杀毒软件是否在运行
Function .onInit
FindProcDLL::FindProc "360tray.exe"
   Pop $R0
   IntCmp $R0 1 0 no_run
   MessageBox MB_ICONSTOP "安装程序检测到360流氓软件正在运行,请退出程序后重试!"
   Quit
   no_run:
FunctionEnd

由于我电脑没有装360 所以我使用qq 来做演示

# 检测qq是否在运行
Function .onInit
FindProcDLL::FindProc "QQ.exe"
   Pop $R0
   IntCmp $R0 1 0 no_run
   MessageBox MB_ICONSTOP "安装程序检测到qq流氓软件正在运行,请退出程序后重试!"
   Quit
   no_run:
FunctionEnd

NSIS 打包 Electron 生成exe安装包

NSIS运行必须为管理员

请以管理员身份运行VNISEdit 编译环境 不然会终止编译并且有一个警告 好像是需要提级 什么什么的!

相关推荐