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

相关推荐
代码煮茶16 小时前
React 组件封装方法论 —— 以 Todo App 为例
javascript·react.js
任沫16 小时前
Agent之Function Call
javascript·人工智能·go
默_笙17 小时前
🛬 我让 AI 帮我写了一个打飞机游戏,结果 Canvas 把我整不会了
前端·javascript
梯度不陡17 小时前
AI 到底能不能从零写软件?ProgramBench 和 RepoZero 给出了两种答案
前端·javascript·面试
胡萝卜术19 小时前
滑动窗口最大值:从暴力到单调队列,层层优化全解析
前端·javascript·面试
kyriewen20 小时前
2026 年了,这 6 个 npm 包可以卸载了——浏览器原生 API 已经能替代
前端·javascript·npm
铁皮饭盒21 小时前
bun直接tsx,优雅!
javascript·后端
_柳青杨1 天前
一文吃透 Node.js 事件循环:从原理到 Node 20+ 重大变更
javascript·后端
JieE2121 天前
LeetCode 101. 对称二叉树|JS 递归 + 迭代双解法,彻底搞懂镜像判断
javascript·算法
冬奇Lab1 天前
AI Workflow 定义的四次演进:从 Markdown 到 JS 脚本,再到分布式多 Agent
javascript·人工智能·agent