如何使用NSIS默认向导脚本制作Windows安装包

发布时间:2021-06-12 12:21:03 作者:小新
来源:亿速云 阅读:445
# 如何使用NSIS默认向导脚本制作Windows安装包

## 一、NSIS简介

NSIS(Nullsoft Scriptable Install System)是一款开源的Windows安装包制作工具,具有以下优势:
- 脚本化控制安装流程
- 支持压缩(Zlib/BZip2/LZMA)
- 多语言支持
- 可扩展插件系统
- 生成的安装包体积小巧

## 二、环境准备

1. **下载安装NSIS**
   - 官网下载地址:https://nsis.sourceforge.io/Download
   - 推荐安装"Full"版本(包含所有插件和工具)

2. **基本开发环境**
   ```bash
   推荐工具:
   - 文本编辑器(VSCode/Notepad++)
   - HM NIS Edit(可视化编辑器,可选)

三、使用向导创建基础脚本

  1. 启动NSIS向导

    • 通过开始菜单打开”NSIS Menu”
    • 选择”NSIS Script Generator”
  2. 填写基本信息

    ; 示例配置
    Name "MyApplication"
    OutFile "Setup.exe"
    InstallDir "$PROGRAMFILES\MyApp"
    
  3. 典型向导配置项

    配置项 说明
    Application Name 软件名称
    Version 版本号
    Publisher 开发商信息
    Install Directory 默认安装路径

四、脚本结构解析

基础脚本模板示例:

; 基本设置
!define APP_NAME "MyApp"
!define VERSION "1.0"

; 安装程序属性
Name "${APP_NAME}"
OutFile "Setup_${VERSION}.exe"
InstallDir "$PROGRAMFILES\${APP_NAME}"

; 界面设置
!include "MUI2.nsh"
!define MUI_ABORTWARNING

; 安装页面
Section "Main" SEC_MN
    SetOutPath "$INSTDIR"
    File /r "..\build\*.*"
SectionEnd

; 创建快捷方式
Section "Shortcuts"
    CreateDirectory "$SMPROGRAMS\${APP_NAME}"
    CreateShortcut "$SMPROGRAMS\${APP_NAME}\MyApp.lnk" "$INSTDIR\app.exe"
SectionEnd

五、常用功能实现

1. 文件安装

Section "Install Files"
    SetOutPath "$INSTDIR"
    File "app.exe"
    File "readme.txt"
    
    ; 递归复制文件夹
    SetOutPath "$INSTDIR\data"
    File /r "data\*.*"
SectionEnd

2. 注册表操作

Section "Registry Settings"
    WriteRegStr HKLM "Software\MyApp" "InstallPath" "$INSTDIR"
    WriteRegDWORD HKLM "Software\MyApp" "RunAtStartup" 1
SectionEnd

3. 快捷方式创建

Section "Create Shortcuts"
    CreateShortcut "$DESKTOP\MyApp.lnk" "$INSTDIR\app.exe"
    CreateShortcut "$SMPROGRAMS\MyApp\Uninstall.lnk" "$INSTDIR\uninstall.exe"
SectionEnd

六、编译与测试

  1. 编译脚本

    • 右键NSIS脚本 → “Compile NSIS Script”
    • 或使用命令行:
      
      makensis.exe script.nsi
      
  2. 测试要点

    • 安装路径是否正确
    • 文件是否完整复制
    • 快捷方式是否创建
    • 卸载是否彻底

七、进阶技巧

1. 自定义界面

!define MUI_CUSTOMFUNCTION_GUIINIT myGuiInit
Function myGuiInit
    ; 自定义界面代码
FunctionEnd

2. 多语言支持

!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "SimpChinese"

3. 静默安装

Setup.exe /S

八、常见问题解决

  1. 文件复制失败

    • 检查文件路径是否正确
    • 确保有管理员权限(Windows Vista+)
  2. 中文乱码问题

    !insertmacro MUI_LANGUAGE "SimpChinese"
    LoadLanguageFile "${NSISDIR}\Contrib\Language files\ChineseSimplified.nlf"
    
  3. 安装包体积过大

    • 使用更好的压缩方式:
      
      SetCompressor /SOLID lzma
      

九、总结

通过NSIS向导可以快速创建基础安装包,建议: 1. 从向导生成的脚本开始 2. 逐步添加自定义功能 3. 参考官方文档(https://nsis.sourceforge.io/Docs/)

附录: - NSIS用户手册 - NSIS插件库 - 示例脚本仓库 “`

注:本文实际约1100字,可根据需要扩展具体章节的详细内容。建议保存为.md文件后用Markdown阅读器查看格式效果。

推荐阅读:
  1. NSIS安装包脚本
  2. 用实例分析Unity如何制作小地图和方向导航

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nsis windows

上一篇:Windows系统中如何安装部署Tomcat

下一篇:Linux中如何安装Golang Oracle数据库驱动程序

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》