Electron应用打包神器:NSIS从安装到实战配置全流程(Windows版)

windows上利用NSIS制作安装向导程序及常见问题 NSIS 的脚本语言和通常的编程语言有类似的结构和语法,但它是为安装程序这类应用所设计的。如果指定了 /r ,则目录会被递归删除,所以在指定目录下的所有文件和目录均被删除。如果指定了 /REBOOTOK ,任何当前不能删除的文件或目录将会在重启后被删除 – 如果文件或目录需要在重启时被删除,会放置一个重启的标记。授权文件就是我们的licence.txt文件,这个文件的编码ASCII编码,就是记事本新建的默认文本格式,这个文件的的路径必须是存在的,否则后面的时候不能生成安装程序。先把默认的模版文件删掉。 阅读详情

Electron应用打包神器:NSIS从安装到实战配置全流程(Windows版)

如果你是一名Electron开发者,当你的应用功能日趋完善,准备交付给用户时,一个绕不开的坎就是:如何制作一个专业、可靠且用户友好的Windows安装包。直接分发一个包含所有依赖的文件夹?这显然不够“产品化”。用户期望的是一个双击即可安装、在开始菜单和桌面上留下快捷方式、并且可以通过系统标准方式卸载的.exe文件。这正是NSIS(Nullsoft Scriptable Install System)大显身手的地方。它不仅仅是一个打包工具,更是一个能让你深度定制安装、卸载全流程的脚本化平台。本文将带你从零开始,深入NSIS的核心,结合Electron应用的特点,打造一个从环境搭建到高级配置的完整工作流,让你彻底告别打包的烦恼。

1. 环境搭建与工具选择:构建你的打包工作站

在开始编写任何脚本之前,一个稳定、高效的开发环境是基础。对于NSIS开发,我们通常需要两个核心组件:NSIS编译器本身,以及一个趁手的脚本编辑器。

NSIS编译器是引擎,负责将你编写的脚本(.nsi文件)编译成最终的安装程序可执行文件(.exe)。直接从其官方网站获取最新稳定版是最佳选择,这确保了功能的完整性和安全性。

脚本编辑器则是你的方向盘。虽然你可以用任何文本编辑器(如VS Code、Notepad++)来编写.nsi脚本,但一个专为NSIS设计的编辑器能极大提升效率。它通常提供语法高亮、代码提示、错误检查,甚至内置的编译和测试功能。目前,社区中比较流行的选择包括:

  • Visual Studio Code + NSIS插件:对于习惯现代IDE的开发者,这是非常灵活的选择。插件能提供基础的语法支持和命令提示。
  • HM NIS Edit:这是一个历史更久、功能专一的NSIS集成开发环境。它内置了图形化的向导,能快速生成脚本框架,非常适合新手入门。

提示:对于追求极致效率和深度定制的开发者,我强烈建议从纯脚本开始,逐步放弃对图形化向导的依赖。因为最终所有高级功能都依赖于你对脚本语言的直接操控。

安装过程非常简单,以官方NSIS和VS Code为例:

  1. 访问NSIS官网,下载并运行安装程序。
  2. 安装过程中,建议勾选所有组件,包括示例脚本和插件,这对后续学习很有帮助。
  3. 安装完成后,你可以在命令行输入 makensis 来验证是否安装成功。如果显示了版本信息和帮助文档,说明环境变量已正确配置。
  4. 接下来,在VS Code中安装名为“NSIS”的插件。这个插件由idleberg维护,质量很高。

至此,你的打包工作站就准备就绪了。让我们用一个最简单的“Hello World”安装包来测试一下。创建一个名为 hello.nsi 的文件,输入以下内容:

; 这是一个简单的NSIS脚本示例
Outfile "HelloInstaller.exe" ; 输出的安装包名称
InstallDir $PROGRAMFILES\MyApp ; 默认安装目录

Section "安装主程序"
    SetOutPath $INSTDIR ; 设置输出路径为安装目录
    ; 这里假设我们有一个文件要打包
    File "myapp.exe"
SectionEnd

Section "创建快捷方式"
    CreateDirectory "$SMPROGRAMS\MyApp"
    CreateShortcut "$SMPROGRAMS\MyApp\MyApp.lnk" "$INSTDIR\myapp.exe"
SectionEnd

在VS Code中,右键点击这个.nsi文件,选择“编译NSIS脚本”,或者直接在终端切换到文件目录,运行 makensis hello.nsi。稍等片刻,一个名为 HelloInstaller.exe 的安装包就会生成。运行它,你会发现它能将 myapp.exe 安装到指定目录,并在开始菜单创建快

NSIS生成安装程序 基于PyQt5写成的界面py程序转换成的exe文件,介绍的NSIS程序打包成可安装的程序 阅读详情

相关推荐

Windows安装包制作工具-NSIS使用教程

NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System)的缩写,它是是一个专业开源的制作 windows 安装程序的工具,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。

mickey2007的博客 6529

Electron应用打包实战:NSIS在Windows下的高效安装包制作指南

本文详细介绍了如何使用NSIS为Electron应用制作高效的Windows安装包。从环境配置到脚本编写,再到高级优化技巧,全面解析如何利用NSIS的脚本化优势实现专业级安装体验,包括体积压缩、静默安装等实用功能,帮助开发者提升Electron应用的分发效率。

weixin_30642561的博客 415

Electron应用打包神器:NSIS从入门到精通(Windows平台保姆级教程)

本文详细介绍了如何使用NSIS工具为Electron应用制作专业的Windows安装包。从环境配置、脚本编写到高级定制,涵盖多语言支持、注册表操作、静默安装等实用技巧,帮助开发者打造媲美商业软件的安装体验,提升Electron应用在Windows平台的部署效率。

weixin_30566063的博客 326

从零到一:用Electron Builder打造你的首个Windows桌面应用

本文详细介绍了如何使用Electron Builder从零开始构建Windows桌面应用,涵盖环境搭建、项目配置、打包优化及高级功能实现。特别适合前端开发者快速入门Electron开发,通过简单的命令即可生成专业的exe安装包,显著提升开发效率。

weixin_28740299的博客 392

Electron应用自动更新实战:从配置到发布的完整指南

本文详细介绍了Electron应用自动更新的完整实现流程,从基础配置到高级功能开发。通过electron-updater和electron-builder工具,开发者可以轻松实现跨平台自动更新功能,包括增量更新、灰度发布等进阶策略,大幅提升应用维护效率。文章还提供了常见问题解决方案和安全注意事项,帮助开发者构建可靠的自动更新系统。

weixin_42519781的博客 433

Electron进阶指南:使用electron-packager打造高效可执行程序

本文详细介绍了如何使用electron-packager将Electron应用打包成高效可执行程序(如.exe文件),包括基础环境准备、进阶配置技巧、安全加固方案及跨平台打包策略。通过实战案例和优化建议,帮助开发者快速掌握打包流程,提升应用分发效率。

weixin_29299807的博客 438

NSIS:Windows应用程序打包与安装制作工具详解

NSIS提供了很多内建函数,如File用于添加文件,Exec用于执行外部程序,以及用于组织安装部分。ReturnNSIS 提供了丰富的界面定制选项,允许开发者对安装程序的外观和体验进行个性化定制。以下是几个 NSIS 脚本中的示例,它们演示了如何定制安装界面。;设置安装向导使用的图片BrandingText "欢迎使用 MyApp 安装向导";添加进度条样式;添加自定义页面!;定制页面的内容可以是任意 NSIS 脚本代码;可以使用 NsisUI 控件或简单的命令。

weixin_31938351的博客 3305

OK3588-C开发板Forlinx Desktop系统烧录与多媒体功能实战

本文详细介绍了OK3588-C开发板Forlinx Desktop系统的烧录步骤与多媒体功能实战。从硬件准备到软件工具配置,逐步解析RKDevTool烧录技巧,并深入测试摄像头、视频编解码及音频功能,帮助开发者快速掌握RK3588芯片的强大性能与Ubuntu系统的优化应用。

weixin_29190169的博客 418

Cocos Creator 3D音频定位实战:从原理到沉浸感实现

3D音频定位是游戏开发中实现沉浸感的关键技术,其核心原理基于HRTF(头部相关传输函数)模型,模拟声音在空间中的传播与双耳感知差异。这项技术通过赋予声音空间坐标、距离衰减和方向属性,将音频从背景元素提升为可交互的环境线索,极大增强了虚拟世界的真实感与玩家的空间认知。在工程实践中,开发者需要深入理解声源、听者、衰减曲线与多普勒效应等基础概念,并合理运用音频池、优先级管理与动态混音等技术手段来平衡效果与性能。对于Cocos Creator开发者而言,无论是使用引擎原生的AudioSource组件构建轻量级方案,

weixin_30972263的博客 295

分享一些基于微信小程序开发的小游戏源码

小游戏小程序是运行在微信生态系统(或其他支持小程序的平台)中的轻量级应用程序,专为休闲游戏体验而设计的小程序子类别,小游戏小程序通常体积较小,加载速度快,用户无需等待长时间即可开始游戏。用户无需下载或安装单独的游戏应用程序,即可通过小程序入口直接进入游戏,同时小游戏小程序通常包含排行榜、分享功能等社交元素,可以增强游戏体验并促进用户参与。game.js:游戏页面的逻辑文件,包含页面数据、生命周期函数、事件处理函数等。game.wxml:游戏页面的结构文件,定义了页面的布局和组件。

xinshangdian的博客 6240

Sourcetree与Gitee的完美协作:从身份验证到推送成功的全流程指南

本文提供了一份详细的Sourcetree与Gitee协作全流程指南,重点解决身份验证失败、Git版本配置及远端仓库设置等常见问题。通过分步讲解,帮助用户掌握从克隆、提交到成功推送的完整操作,并整合了使用个人访问令牌进行身份验证等关键热词信息,确保Windows与MacOS用户都能顺畅完成代码管理。

m2n3b4v5c6的博客 711

Android汽车服务篇(一) CarService

本文主要说明了CarService这一系统服务的启动流程,以及一些关键成员的创建和初始化流程.同时简单介绍了一下客户端是如何获取和使用CarService对象, 如上文介绍的, CarService对象只是获取各个Manager的媒介,它本身并不承担管理传感器.空调等具体的任务.如果要获取车辆的相关信息,如车速, 车内空调温度,诊断信息, 或对车辆进行相关的控制,如升高和降低空调温度,控制座椅和车窗, 调节音量等,就要通过具体的Manager中的API和对应的服务来实现了.

u012514113的专栏 8148

Python RK3588 MPP 8路视频硬解码!全体目光向我看齐!

本文重写了官方demo、加入了Zlmediakit进行拉流并通过pybind11将代码封装成so库,现在,在python中直接通过import的方式,就能完成基础的拉流解码操作,目前支持8路拉流解码!!!

m0_46303486的博客 4881

VMware + ubuntu20.04 + qemu安装

遇到报错可参考:(从ubuntu裸系统开始安装)

NosONE 3230

SAP Joule Studio 全景解析

摘要:SAP Joule Studio是SAP Build平台中的低代码/专业级复合工作台,用于构建和管理企业专属的Joule智能体与技能。它支持通过拖拽和声明式编排实现跨系统任务自动化,与SAP及第三方系统集成。核心构件包括Agent(智能体)、Skill(技能)、Action(动作)和Project(项目)。Joule Studio强调企业级落地,与SAP Build Process Automation等工具协同,实现从设计到运行的全生命周期管理。典型应用场景包括供应链补货、财务关账和人力服务台自动化

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 399

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: Flink任务卡在INITIALIZING状态的深度排查与解决
下一篇: 前端实战】Vue3+Element Plus打造企业级后台管理系统:从零到部署
sql99
博客等级 码龄19年 168粉丝 1905原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值