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

相关推荐
无心使然云中漫步8 分钟前
GIS OGC之WMTS地图服务,通过Capabilities XML描述文档,获取matrixIds,origin,计算resolutions
前端·javascript
Bug缔造者14 分钟前
Element-ui el-table 全局表格排序
前端·javascript·vue.js
xnian_1 小时前
解决ruoyi-vue-pro-master框架引入报错,启动报错问题
前端·javascript·vue.js
麒麟而非淇淋2 小时前
AJAX 入门 day1
前端·javascript·ajax
2401_858120532 小时前
深入理解MATLAB中的事件处理机制
前端·javascript·matlab
阿树梢2 小时前
【Vue】VueRouter路由
前端·javascript·vue.js
随笔写3 小时前
vue使用关于speak-tss插件的详细介绍
前端·javascript·vue.js
程序猿小D3 小时前
第二百三十五节 JPA教程 - JPA Lob列示例
java·数据库·windows·oracle·jdk·jpa
快乐牌刀片884 小时前
web - JavaScript
开发语言·前端·javascript
秋雨凉人心4 小时前
call,apply,bind在实际工作中可以使用的场景
javascript