electron nsis打包windows应用程序

使用electron开发应用程序之后,经常会单独对windows做32位或者是64位程序打包操作,有时候默认的程序做不了相应的需求,往往需要添加单独的页面或者是修改默认的操作,比如一下添加一个默认的选择页面:

自定义脚本代码如下所示:

!define MUI_LANGUAGE "Chinese"

Unicode true

!include nsDialogs.nsh

!include LogicLib.nsh

#OutFile nsDialogs.exe

#RequestExecutionLevel user

#ShowInstDetails show

Var Dialog

Var Bool_mysql

Var Bool_java

;mysql

Var Ck_mysql

;java

Var Ck_java

Page custom pgPageCreate pgPageLeave

Function pgPageCreate

nsDialogs::Create 1018

Pop $Dialog

${If} $Dialog == error

Abort

${EndIf}

${NSD_Createcheckbox} 50u 0u 70u 20u "mysql"

Pop $Ck_mysql

StrCpy $1 $Ck_mysql

GetFunctionAddress $3 OnClick_CheckMysql

nsDialogs::onClick $1 $3

StrCpy $Bool_mysql 0

${NSD_Createcheckbox} 50u 40u 70u 20u "java"

Pop $Ck_java

StrCpy $1 $Ck_java

GetFunctionAddress $3 OnClick_CheckJava

nsDialogs::onClick $1 $3

StrCpy $Bool_java 0

nsDialogs::Show

FunctionEnd

Function PgPageLeave

FunctionEnd

Function OnClick_CheckMysql

${IF} $Bool_mysql == 1

IntOp $Bool_mysql $Bool_mysql - 1

StrCpy $1 $Ck_mysql

${ELSE}

IntOp $Bool_mysql $Bool_mysql + 1

StrCpy $1 $Ck_mysql

${EndIf}

FunctionEnd

Function OnClick_CheckJava

${IF} $Bool_java == 1

IntOp $Bool_java $Bool_java - 1

StrCpy $1 $Ck_java

${ELSE}

IntOp $Bool_java $Bool_java + 1

StrCpy $1 $Ck_java

${EndIf}

FunctionEnd

!macro customInstall

${If} $Bool_mysql == 0

${ELSE}

MessageBox MB_OK "001" IDOK

${EndIf}

${If} $Bool_java == 0

MessageBox MB_OK "200" IDOK

${ELSE}

MessageBox MB_OK "201" IDOK

${EndIf}

!macroend

Section "MainSection" SEC01

SectionEnd

相关推荐
道不尽世间的沧桑3 小时前
第17篇:网络请求与Axios集成
开发语言·前端·javascript
久绊A3 小时前
Python 基本语法的详细解释
开发语言·windows·python
bin91536 小时前
DeepSeek 助力 Vue 开发:打造丝滑的复制到剪贴板(Copy to Clipboard)
前端·javascript·vue.js·ecmascript·deepseek
晴空万里藏片云7 小时前
elment Table多级表头固定列后,合计行错位显示问题解决
前端·javascript·vue.js
奶球不是球7 小时前
el-button按钮的loading状态设置
前端·javascript
无责任此方_修行中9 小时前
每周见闻分享:杂谈AI取代程序员
javascript·资讯
dorabighead10 小时前
JavaScript 高级程序设计 读书笔记(第三章)
开发语言·javascript·ecmascript
林的快手12 小时前
CSS列表属性
前端·javascript·css·ajax·firefox·html5·safari
bug总结13 小时前
新学一个JavaScript 的 classList API
开发语言·javascript·ecmascript
网络安全-老纪13 小时前
网络安全-js安全知识点与XSS常用payloads
javascript·安全·web安全