Notes
  • 简介
  • Linux
    • Ubuntu
      • Ubuntu 20.04 ARM64 修改PAGE_SIZE 64k
    • Samba
      • CentOS7安装Samba
      • 简单案例
      • 审计
      • 相关命令
    • Systemd
    • FPM 打包 nginx rpm 包
    • rpm 打包-从二进制文件进行打包
    • Centos7 重置密码
    • CentOS7搭建kvm并创建虚拟机
    • CentOS7-KVM 嵌套虚拟化
    • CentOS7 KVM GPU 穿透
    • Bonding
    • CentOS7 发送邮件
    • CentOS7 安装 OpenVPN
    • Linux 多线路由策略
    • Webmin 安装
    • NoVNC 安装
    • SRS-RTMP 服务部署
    • CentOS7 安装 MongoDB
    • confluence 安装
    • jira 安装
    • crowd 安装
    • ScriptRunner For Jira
    • ScriptRunner For Confluence
    • Ubuntu VNC
    • Ubuntu18.04-VNC 安装
    • deb 打包
    • iptables
    • debian 保持软件包一致
    • Ubuntu18.04 编译安装 grpc
    • CentOS7 安装 odoo13
    • Pacemaker 入门
    • Firewalld Rich Language
    • PHP Xdebug
    • CentOS7.3 编译安装 Python3.6
    • 葫芦儿打包
    • CentOS7 安装 Tomcat8
    • CentOS7 安装 JDK
    • GuacamoleServer 编译安装
    • FreeBSD7.0安装AMP
    • CentOS7 换源
    • deb下载并离线安装
    • pip下载并离线安装
  • Network
    • 案例一
  • AI
    • 微调Qwen2.5
    • Qwen2.5 VL AWQ量化
    • qwen2.5 填充权重
  • JavaScript
  • Zabbix
    • CentOS7 安装 Zabbix4.0 LTS
    • Zabbix 加密连接
    • Zabbix 主动和被动模式
    • Zabbix 配置邮件报警
    • Zabbix 监控 MySQL
  • 数据库
    • MySQL
      • CentOS7 Install MySQL5.7
      • MySql 主从配置
      • CentOS7 安装 Percona XtraDB Cluster
      • MySql 压力测试-sysbench
      • MariaDB Galera Cluster
      • 备份脚本
    • MongoDB
      • 启用账号密码登录
      • 备份脚本
  • Nginx
    • CentOS7 安装 Nginx
    • Nginx 配置
    • nginx-http-flv-module
    • Nginx-WebDAV
  • Docker
    • CentOS7 安装 Docker
    • Dockerfile
    • DockerSwarm 集群
    • Docker 安装 guacamole
  • Python
    • 虚拟环境
  • Windows
    • Windows 问题集合
    • 迅雷自动安装 Chrome 插件
    • RDP 注册表
    • Rdp File Setting
    • 本地组策略对象(LGPO)工具
    • 禁用应用联网
    • SQL Server 问题处理
    • SQL Server Trigger
    • NSIS 脚本
    • 使用QEMU运行ARM64 CentOS7
    • DOS 脚本
    • Windows 11 设置旧版右键菜单
    • 远程桌面二次验证
  • Apple
    • AppStore 应用开发及上架
    • Apple 打包 Golang WebDav 制作 pkg 安装包
  • Android
    • Android Studio创建具有root权限的虚拟机
    • Android读写挂载system
    • Android安卓CA至系统
  • 证书
    • 证书名称(主题)
    • 证书扩展
    • SSL 自签
    • 免费 https 证书申请
  • 树莓派
    • 树莓派系统烧录及系统打包制作
    • 树莓派基础操作
    • 树莓派安装 NextCloud
    • 树莓派安装 LNMP
    • 树莓派自定义开机界面和登录提示
    • 树莓派安装 HomeAssistant
    • HomeAssistant 配置
    • 树莓派自动挂载 U 盘
    • 树莓派安装 vsftpd
    • vsftpd 配置文件详解
  • ceph
    • ceph-deploy 部署 ceph nautilus 版本
    • ceph dashboard
  • OpenStack
    • OpenStack VM 配置 Virtual IP
    • OpenStack Glance 对接 Ceph RBD 存储
    • OpenStack Cinder Volumes 对接 Ceph RBD 存储
    • OpenStack 集群搭建
    • OpenStack Rocky 单节点部署
    • OpenStack Rocky 集群部署
    • OpenStack CentOS6 镜像制作
    • OpenStack-Ubuntu 镜像制作
    • Openstack-Windows 镜像制作
    • OpenStack-RBD 导入镜像
    • OpenStack-Rocky 灾备
    • rbd-mirror
  • FFmpeg
    • CentOS7 静态编译FFmpeg
    • MacOS10.12静态编译FFmpeg
    • CentOS7 Arm64静态编译FFmpeg
    • 使用NVIDIA显卡
    • 脚本
  • Other
    • 华为一碰传标签制作
    • 常用软件
    • wireguard
由 GitBook 提供支持
在本页
  • 设置文件属性
  • 单文件可执行文件
  • 设置卸载信息
  • 界面内容设置
  1. Windows

NSIS 脚本

设置文件属性

; 自定义常量
!define PRODUCT_NAME "zhxlp" ; 程序名称
!define PRODUCT_VERSION "1.0.0.0"  ; 版本

; 安装程序包含的语言
!insertmacro MUI_LANGUAGE "SimpChinese"

; 设置文件属性
VIProductVersion "1.0.0.0" ; 版本号
VIAddVersionKey  /LANG=${LANG_SimpChinese} "ProductName" "${PRODUCT_NAME}" ;产品名称
VIAddVersionKey  /LANG=${LANG_SimpChinese} "Comments" "测试" ;备注
VIAddVersionKey  /LANG=${LANG_SimpChinese} "CompanyName" "zhxlp" ;公司名称
VIAddVersionKey  /LANG=${LANG_SimpChinese} "LegalCopyright" "Copyright (c) 2016-2020 zhxlp" ;版权
VIAddVersionKey  /LANG=${LANG_SimpChinese} "FileDescription" "测试" ;文件描述
VIAddVersionKey  /LANG=${LANG_SimpChinese} "FileVersion" "${PRODUCT_VERSION}" ;文件版本
VIAddVersionKey  /LANG=${LANG_SimpChinese} "ProductVersion" "${PRODUCT_VERSION}" ;产品版本

单文件可执行文件

!include  "MUI.nsh"

; 自定义常量
!define PRODUCT_NAME "zhxlp" ; 程序名称
!define PRODUCT_VERSION "1.0.0.0"  ; 版本
!define MUI_ICON icon.ico ; 程序图标

; 安装目录
InstallDir "$TEMP\zhxlp"

Name ${PRODUCT_NAME}
; 输出文件
OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
; 静默安装
SilentInstall silent

Section MainSection
  ; 设置输出目录
  SetOutPath "$INSTDIR"
  ; 文件覆盖
  SetOverwrite on
  ; 释放文件
  File /r "file\*.*"
  ExecShell "open" "$INSTDIR\zhxlp.exe"
SectionEnd

设置卸载信息

; 自定义常量
!define PRODUCT_NAME "zhxlp" ;产品名称
!define PRODUCT_VERSION "1.0.0.0" ;版本号
!define COMPANY_NAME "zhxlp" ;公司名称
!define PRODUCT_PUBLISHER "${COMPANY_NAME}" ;发布者,在控制面板-程序和功能中显示
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\zhxlp" ; 卸载注册表存放位置
!define PRODUCT_WEB_SITE "https://www.zhxlp.com" ; 应用程序主页链接,在控制面板-程序和功能中显示


; 安装完成后,在注册表中写入卸载信息
Section -Post
    ; 软件版本
    WriteUninstaller "$INSTDIR\uninst.exe"
    ; 程序名称
    WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME}"
    ; 卸载程序路径
    WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
    ; 图标路径
    WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\uninst.exe"
    ; 程序版本
    WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
    ; 应用程序主页
    WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
    ; 发布者名称
    WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
    ; 安装内容总大小
    ${GetSize} "$INSTDIR" "/S=0K" $0 $1 $2
    IntFmt $0 "0x%08X" $0
    WriteRegDWORD HKLM "${PRODUCT_UNINST_KEY}" "EstimatedSize" "$0"
SectionEnd
Section Uninstall
    ; 删除卸载信息注册表
    DeleteRegKey HKLM "${PRODUCT_UNINST_KEY}"
SectionEnd

界面内容设置

!include "MUI.nsh"
; 定义变量
Var MyMsgBeforeRemove ;是否卸载弹框提示内容
var Wtitle ; 欢迎界面标题
var Wtext ; 欢迎界面内容
;var Ftitle ; 完成界面标题
;var Ftext ; 完成界面内容
Var DataDir ; 数据存储目录

; MUI 预定义常量
!define MUI_ABORTWARNING ;定义停止安装警告弹窗
!define MUI_ICON "icon\zhxlp.ico"  ; 安装程序icon图标
!define MUI_WELCOMEFINISHPAGE_BITMAP "icon\install_left.bmp" ; 安装界面左侧图片
!define MUI_TEXT_WELCOME_INFO_TITLE $Wtitle ; 安装欢迎界面标题
!define MUI_TEXT_WELCOME_INFO_TEXT $Wtext ; 安装欢迎界面内容
;!define MUI_TEXT_FINISH_INFO_TITLE $Ftitle ; 安装完成界面标题
;!define MUI_TEXT_FINISH_INFO_TEXT $Ftext ; 安装完成界面内容
!define MUI_UNICON "icon\zhxlp.ico" ; 卸载程序icon图标
;!define MUI_UNWELCOMEFINISHPAGE_BITMAP "icon\install_left.bmp" ; 卸载界面左侧图片
;!define MUI_UNTEXT_WELCOME_INFO_TITLE $Wtitle ; 卸载欢迎界面标题
;!define MUI_UNTEXT_WELCOME_INFO_TEXT $Wtext ; 卸载欢迎界面内容
;!define MUI_UNTEXT_FINISH_INFO_TITLE $Ftitle ; 卸载完成界面标题
;!define MUI_UNTEXT_FINISH_INFO_TEXT $Ftext ; 卸载完成界面内容


; 定义展示界面
!insertmacro MUI_PAGE_WELCOME  ; 安装欢迎页面
;!insertmacro MUI_PAGE_DIRECTORY  ; 安装目录选择页面
!insertmacro MUI_PAGE_INSTFILES ; 安装过程页面
;!insertmacro MUI_PAGE_FINISH ; 安装完成页面
;!insertmacro MUI_UNPAGE_WELCOME ; 卸载欢迎页面
!insertmacro MUI_UNPAGE_INSTFILES ; 卸载过程页面
;!insertmacro MUI_UNPAGE_FINISH ; 卸载完成界面


; 安装程序即将完成初始化时调用
Function .onInit
    ;StrCpy $Wtitle "安装欢迎界面标题"
    ;StrCpy $Wtext "安装欢迎界面内容"
    ;StrCpy $Ftitle "安装完成界面标题"
    ;StrCpy $Ftext "安装完成界面内容"
FunctionEnd

; 卸载程序即将完成初始化时调用
Function un.onInit
    ;StrCpy $Wtitle "卸载欢迎界面标题"
    ;StrCpy $Wtext "卸载欢迎界面内容"
    ;StrCpy $Ftitle "卸载完成界面标题"
    ;StrCpy $Ftext "卸载完成界面内容"
    StrCpy $MyMsgBeforeRemove "你确实要完全卸载 ${PRODUCT_NAME} 其及所有的组件吗?"
    ; 展示是否卸载提示弹窗
    MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 $MyMsgBeforeRemove IDYES +2
    Abort   ; 立刻退出
FunctionEnd
上一页SQL Server Trigger下一页使用QEMU运行ARM64 CentOS7

最后更新于3年前