• NSIS打包环境搭建及入门


    NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System)的缩写,它是一个免费的 Win32 安装、卸载系统,采用了简洁高效的脚本方式。它本来是一个由 Nullsoft 创建并用于作为 Winamp 及其插件发布的系统,但现已被上百个应用程序所应用,作为它们进行程序发布的工具。

    环境搭建

    本人使用的是Visual Studio Code推荐使用这个,环境搭建也很简单,第一步去官网下载安装包

    下载地址:https://nsis.sourceforge.io/Main_Page 

    下载完成后,点击安装即可,安装记得安装路径,完了再VS Code中搜索nsis插件安装。

     注意是你自己的安装路径,默认是在C:Program Files (x86)NSISmakensis.exe

    脚本文件的默认扩展名是 .nsi,头文件为 .nsh。

    一个NSIS脚本应该包括安装程序属性和区段、函数。 你也可以使用编译器命令在编译的时候进行指定。

    所必需的是 OutFile 指令 (该命令告诉NSIS安装程序输出路径) 和一个 Section 区段。

    例子:

    OutFile "FirstNSIS.exe"
    
    Section "section_name" section_index_output
        # your code here
    SectionEnd

    OutFile属性指定了安装包的输出文件名,Section、SectionEnd就是一个区段,安装的逻辑就是写在这里。

    一个安装脚本至少要包含一个Section区段,相当于是程序的入口。

    有一个小细节,如果是有中文的话,编码改为GB2312,否则会乱码。

    基本语法

    注释

    单行注释 使用#或者;,多行注释可以使用C/C++中的注释语法。

    例子:

    # your code here
    # 这是一个单行注释
    ; 这也是一个单行注释
    /*
        这是一个多行注释
    */

    数据类型

    • 数字类型,数字常量可以用十进制、十六进制(0x为前缀)和八进制(0为前缀)表示。
    • 字符串,字符串常量可以使用引号引用,转义字符用$符号,例如$ ,$ ,$ ,美元符号为$$。

    续行符

    当一行内容过长时,可以使用续行符 进行折回,编译器会自动的把下一行接到上一行来作为完整的一行,而不是看作新的行。

    调试脚本

    下面讲一下,对于调试脚本很有用的两个命令

    • DetailPrint
    • MessageBox

    DetailPrint,用于打印一个自定义信息,语法如下:

    DetailPrint "user_message"
     
    MessageBox是一个弹出框提示消息,语法如下:
    MessageBox mb_option_list "messagebox_text"
    mb_option_list 是一个枚举值,可以有多个,多个之间用 | 分隔。具体值如下:
    按钮包括
    MB_OK
    MB_OKCANCEL
    MB_ABORTRETRYIGNORE
    MB_RETRYCANCEL
    MB_YESNO
    MB_YESNOCANCEL
    图标包括
    MB_ICONEXCLAMATION
    MB_ICONINFORMATION
    MB_ICONQUESTION
    MB_ICONSTOP
    按钮和图标可以结合使用,中间用 | 分隔。
    具体请看下图的例子:

    具体更详细的内容推荐直接看官方文档资料,十分详细。

    官方文档地址:https://nsis.sourceforge.io/Docs/

  • 相关阅读:
    从nsurlsession、Alamofire到moya
    ssl是tcp的会话层与表示层
    Springboot+Thymeleaf+layui框架的配置与使用
    机械思维 信息思维
    路在何方—价值观、价值链与人生(草稿)
    世界由物质、能量、信息
    http_build_query()函数使用方法
    laravel 远程一对多实例
    MySQL中的float和decimal类型有什么区别
    mysql int(19) float(7,2) decimal(7,2)对比
  • 原文地址:https://www.cnblogs.com/njabsky/p/13341682.html
Copyright © 2020-2023  润新知