NSIS (Nullsoft Scriptable Install System) 是一款专业开源的 Windows 安装程序制作工具,以小巧、灵活著称,特别适合网络分发,能够满足各类安装需求。它采用脚本驱动,支持复杂安装逻辑,并拥有丰富的插件和脚本生态,可实现网络安装、与 Windows 及组件交互、安装或更新共享组件等功能。
功能特色
-
极致小巧:完整功能的安装程序开销仅 34 KB,支持 ZLib、BZip2、LZMA 三种压缩方式,且无需额外自解压模块。
-
跨版本兼容:单个安装包可兼容 Windows 95 至 Windows 11 的几乎所有主流版本。
-
脚本驱动,灵活强大:基于脚本语言,可处理复杂逻辑(版本检测、升级、注册表/文件操作、环境变量、重启等),并支持函数和回调。
-
多语言与自定义界面:内置 40 余种语言(包括阿拉伯语、希伯来语等 RTL 语言),支持经典/现代向导界面,也可完全自定义对话框和外观。
-
扩展性极强:支持 C/C++/Delphi 等编写的插件,可实现网络下载、文件补丁、Win32 API 调用等功能;还可用于制作网络安装包。
-
工程集成与自动构建:强大的预处理器支持多项目整合、自动生成不同版本(如精简/完整版),脚本格式易于阅读和自动生成。
-
可移植编译器:可在 Linux/*BSD 等 POSIX 平台编译,生成的安装程序仍运行于 Windows。
-
其他关键能力:CRC32 自校验、静默安装、组件树选择、安装卸载全支持、单安装包最大 2GB,且完全免费(自由使用)。
汉化说明
NSIS 汉化说明
- 基于官方源码进行简体中文翻译并重新编译
- 此版本支持安装日志记录功能(NSIS_CONFIG_LOG=yes)
- 支持最大字符串长度为 8192 字节(NSIS_MAX_STRLEN=8192)
- 新增
Allow7zipExtract开关指令,可控制生成的安装程序是否允许被 7-Zip 识别与解包
防 7-Zip 解包功能说明
通过修改 NSIS 源码新增 Allow7zipExtract 开关指令,可控制生成的安装程序是否允许被 7-Zip 识别与解包。
Allow7zipExtract true; 允许 7‑Zip 正常识别并解包(默认行为)Allow7zipExtract false; 启用防 7‑Zip 解包模式
集成 NISEdit Next 脚本编辑/编译器
基于 Scintilla 编辑引擎,使用 C++ / Win32 开发的轻量级 NSIS 脚本编辑/编译器,支持多标签、语法高亮、代码补全、编码转换等,内置脚本向导、模板和常用工具。
NISEdit Next 随安装包一并部署到 NSIS 安装目录下的 NISEditNext 文件夹,并自动注册为 .nsi / .nsh 文件的默认打开方式和右键编辑程序。
额外集成的插件
AccessControl:Windows ACL 权限管理
BgWorker:后台线程执行 NSIS 函数
ExecDos:隐藏窗口执行命令行
FontInfo:字体名称获取与枚举
NsJSON:JSON 解析、操作与生成
nsduiskin:DuiLib 皮肤引擎集成
nsis7z:7z 压缩包解压
nsisFirewall:Windows 防火墙规则操作
nsisXML:基于 MSXML 的 XML 处理
Process:进程查找与终止
Registry:增强注册表操作
Services:Windows 系统服务管理
StdUtils:C 标准库函数集合
额外集成的文档
防 7‑Zip 解包功能说明
NSIS 插件教程合集(mefcl.com)
NSIS 图文教程集锦(flighty.cn)
更新日志
- 使用 VS2008 重新编译了汉化后的 NSIS 源码,生成的二进制文件体积有所缩小,兼容性更好
- UI 文件使用体积更小的官方原版文件
- 集成 NISEdit Next 1.3


文章评论
NanLon 大佬好,感谢汉化和制作新的编辑器,有两点建议。
1、汉化版制作的文件比原版更大,这个是否可以优化下,不清楚是不是源码编译的原因,连 ui 文件也更大,比如 modern.exe 原版 6.5k,汉化版本达到 86.5kb。
2、时隔 20 年 NSIS 终于又有了新编辑器,很是不容易,这个东西大佬懒得做,小白又很需要,想问下 UI 界面是否可以参考 VNISEdit ,这个经过多年使用感觉比较顺手,设计的也比较合理,最关键的用户量非常大,能大大降低用户使用习惯门槛。
再次感谢付出。
@NSFN 汉化版受汉化和编译环境影响,体积没法控制到原版大小,多出的体积实际使用也没多大影响吧!至于编辑器就是仿 VNISEdit 做的,大多数功能相同且进行了增强,但 UI 做到一模一样是不可能的。
CRCCheck force
强制检查不工作?
@app 我这边正常,你具体说一下你遇到的情况。
@南陇居士 启用强制crc检查参数编译的exe文件可以任意修改, 修改后还是能够正常运行。 多谢回复!
@app 可能你对 NSIS 的 CRCCheck 有误解,NSIS 的 CRC 自检不是完整文件防篡改校验,CRC 主要用于检查 NSIS 安装数据块是否损坏,不等于“整个 exe 任意位置被改都会报损坏”。
通常这些修改可能不会触发 NSIS 损坏提示:
> 改版本资源
> 改图标资源
> 改 PE 头部部分字段
> 追加数据到文件末尾
> 修改数字签名区域
> 用资源编辑器改某些资源
这些修改更像是改了安装器外壳,NSIS 解包需要的数据块仍然完整,所以还能正常启动。
如果你改的是压缩数据块内容,例如安装包内部文件数据、NSIS 指令数据、CRC 附近结构,才更容易触发损坏提示。
CRCCheck 默认是 on,我这边破坏了一个安装包数据块,他会有文件损坏提示
@南陇居士 多谢!
对NISEdit Next的两点建议:1、增加打开时全屏或是小屏的选项,现在只能小屏;2、缩小一下下部状态区域,增大上部编辑 区域的视图。
@hs 好的,后期修正
20年过去,NSIS终于又有了专属的编辑器。
@mefcl 哈哈!弥补一下这个缺憾,不过还需要继续完善。
MSE 对 NSIS图文教程集锦.chm 报毒, HackTool:Win32/keygen.
@Joo Seng 那个应该没啥,不知道为什么报毒,不行就删了吧
【BUG反馈】NISEditNext 高分屏DPI未适配,界面挤在一起,图片已发送至邮箱
@z 已修复
但是会报毒啊!
@52BL 那个文件报毒,我这边没有啊
谢谢佬 打赏66支持 可以介个联系不
@s 谢谢!可以发邮件联系 hguoyin@outlook.com