NSIS 安装包默认支持的参数

NSIS 安装包默认支持的参数

NSIS 制作的安装包默认支持 /NCRC、/S、/D= 三个参数,详见下文 3.2 Installer Usage(来自 Command Line Usage)。

以上三个参数对应的功能分别为禁止 CRC 校验、静默安装、设置安装路径,这三个功能不需要自己在 NSI 脚本里开发就默认支持。

3.2 Installer Usage

Generated installers and uninstallers accept a few options on the command line. These options give the user a bit more control over the installation process.

3.2.1 Common Options

  • /NCRC disables the CRC check, unless CRCCheck force was used in the script.
  • /S runs the installer or uninstaller silently. See section 4.12 for more information.
  • /D sets the default installation directory ($INSTDIR), overriding InstallDir and InstallDirRegKey. It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces. Only absolute paths are supported.

3.2.2 Uninstaller Specific Options

  • _?= sets $INSTDIR. It also stops the uninstaller from copying itself to the temporary directory and running from there. It can be used along with ExecWait to wait for the uninstaller to finish. It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces.

3.2.3 Examples

installer.exe /NCRC
installer.exe /S
installer.exe /D=C:\Program Files\NSIS
installer.exe /NCRC /S /D=C:\Program Files\NSIS
uninstaller.exe /S _?=C:\Program Files\NSIS
# uninstall old version
ExecWait '"$INSTDIR\uninstaller.exe" /S _?=$INSTDIR'

关于静默安装参数 /S

只要指定了 /S 参数(S 必须大写),NSIS 脚本中 IfSilent 函数就会自动返回 true,这是 NSIS 内置支持的,不需要自己在 NSIS 脚本中写代码来解析。

来自官方文档中 IfSilent 的函数说明:

(Checks the silent flag, and jumps to jump_if_silent if the installer is silent, otherwise jumps to jump_if_not. The silent flag can be set by SilentInstall, SilentUninstall, SetSilent and by the user passing /S on the command line.)

关于选盘参数 /D=

XXXSetup.exe /D=C:\Program Files (x86)

如上,给安装包指定这个参数后,会自动赋值给 $INSTDIR 变量。并且如果在安装包内调用 ${GetParameters} $R0 来获取安装包参数时,将获取不到 /D= 参数,被 NSIS 自己吃掉了,不会传给 NSI 脚本

如果想自己处理 /D= 参数,比如加一些自己的逻辑,必须换个参数,比如改为 /d=(即 D 改为小写的 d)。

另外,注意:

1. 这个参数指定的路径不能包含引号,即使路径中含有空格。

2. 该参数支持创建多级文件夹。

上面说的 /D= 参数被 NSIS 自己吃掉的问题,参考帖子:

windows - NSIS weird behavior with GetParameters - Stack Overflow

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/682799.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据资产入表-数据治理-标签设计标准

前情提要:数据价值管理是指通过一系列管理策略和技术手段,帮助企业把庞大的、无序的、低价值的数据资源转变为高价值密度的数据资产的过程,即数据治理和价值变现。上一讲介绍了数据清洗标准设计的基本逻辑和思路。 上一讲介绍了其他的通用标…

PyTorch 相关知识介绍

一、PyTorch和TensorFlow 1、PyTorch PyTorch是由Facebook开发的开源深度学习框架,它在动态图和易用性方面表现出色。它以Python为基础,并提供了丰富的工具和接口,使得构建和训练神经网络变得简单快捷。 发展历史和背景 PyTorch 是由 Fac…

几何裁剪技术在AI去衣应用中的革新作用

引言: 随着人工智能技术的飞速发展,其在图像处理领域的应用也日益广泛。特别是在AI去衣技术中,几何裁剪技术扮演着至关重要的角色。本文将深入探讨几何裁剪技术在AI去衣中的应用及其带来的影响。 一、几何裁剪技术概述 几何裁剪技术是一种基…

【python】python租房数据分析可视化(源码+数据+报告)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

completefuture造成的rpc重试事故

前言 最近经历了一个由于 completefuture 的使用,导致RPC重试机制触发而引起的重复写入异常的生产bug。复盘下来,并非是错误的使用了completefuture,而是一些开发时很难意识到的坑。 背景 用户反馈通过应用A使用ota批量升级设备时存在概率…

北航数据结构与程序设计第四次作业选填题复习

首先都是线性的,线性包括顺序和链式,栈和队都可以用两种方式实现。栈只能存于栈顶取于栈顶,队列先进先出,因此存取点是固定的。 函数栈帧创建原理 画图即可。 A.显然不行,5如果第一个出来说明5是最后一个进的&#xf…

收银系统源码-千呼新零售2.0【合作案例】

千呼新零售2.0系统是零售行业连锁店一体化收银系统,包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体,线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货等连锁店使用。 详细介绍请查看下…

解锁下载EasyRecovery2024电脑版软件 3步破解下载秘籍!

在数字时代,数据已成为我们生活中不可或缺的一部分。无论是工作中的重要文件,还是珍贵的家庭照片和视频,数据都承载着我们的回忆和努力。然而,数据的丢失也是我们常常遇到的问题。硬盘损坏、误删除、病毒攻击等都可能导致数据丢失…

echarts 仪表盘根据点击的刻度重新设置值

1 更具点击获取的坐标 event.offsetY , event.offsetX 2 通过中心点坐标差,获取角的度数,然后取180度的占比,最后✖️总值刻度值. 3 然后在赋值给data 例子 : 角的度数是30度 30/180*30 5 则刻度值指向5 角度度数怎么求? (Math.atan2(y - event.offsetY, x - event.offsetX) …

以sqlilabs靶场为例,讲解SQL注入攻击原理【42-50关】

【Less-42】 使用 or 11 -- aaa 密码,登陆成功。 找到注入点:密码输入框。 解题步骤: # 获取数据库名 and updatexml(1,concat(0x7e,(select database()),0x7e),1) -- aaa# 获取数据表名 and updatexml(1,concat(0x7e,(select group_conca…

Siemens-NXUG二次开发-创建倒斜角特征、边倒圆角特征、设置对象颜色、获取面信息[Python UF][20240605]

Siemens-NXUG二次开发-创建倒斜角特征、边倒圆角特征、设置对象颜色、获取面信息[Python UF][20240605] 1.python uf函数1.1 NXOpen.UF.Modeling.AskFaceData1.2 NXOpen.UF.Modeling.CreateChamfer1.3 NXOpen.UF.ModlFeatures.CreateBlend1.4 NXOpen.UF.Obj.SetColor 2.实体目标…

计算机组成原理-唐朔飞 概念总结(概论 总线 存储器部分)

计算机系统由“硬件”“软件”两大部分组成,软件通常存放在主存或辅存 软件分为系统软件和应用软件 1.1.2 计算机系统的层次结构 源程序:用户用高级语言编写的程序 目标程序:机器能识别的机器语言程序 实际机器:直接执行机器…

C++缺省参数函数重载

缺省参数 大家知道什么是备胎吗? C中函数的参数也可以配备胎。 3.1缺省参数概念 缺省参数是声明或定义函数时为函数的参数指定一个默认值。在调用该函数时,如果没有指定实参则采用该默认值,否则使用指定的实参。 void TestFunc(int a 0…

OPPO 文件传输 - 将文件从 OPPO 手机传输到 PC 的 5 种方法

OPPO手机以其出色的拍照功能而闻名,尤其是新推出的OPPO Find X2系列,它配备了高清前置镜头和超夜景模式,让您轻松拍出精彩瞬间。当您需要将这些照片或其他文件从OPPO手机传输到PC时,以下是五种简便的方法。 第 1 部分&#xff…

引擎:UI

一、控件介绍 Button 按钮 创建一个按钮 按钮禁用 精灵模式 颜色模式 缩放模式 绑定点击事件 EditBox 输入框 Layout 布局 支持水平排列、垂直排列、背包排列 PageView 页面视图 ProgressBar 进度条 RichText 富文本 绑定点击事件 事件可以被其它标签包裹 图文混排 Scroll…

揭秘AI 原生应用技术栈

一次性把“AI 原生应用技术栈”说明白 AI热潮持续,厂商努力推动有价值的应用涌现,并打造服务AI原始应用的平台产品。本文精简介绍业界最新的AI原生应用技术栈,让您迅速把握前沿科技脉搏。 整体架构 AI技术栈逻辑图精简呈现,多层…

nexus搭建npm前端项目的私服

一、为什么要搭建私库 节省外网带宽加速maven构建部署第三方构件(特别是无法从公共仓库下载的构件)提高稳定性(内网部署,更少地依赖外网)降低中央仓库的负荷 构件,好比我们的藏书,去书店或商城…

Python 全栈系列249 IO并发:异步、线程与协程

说明 很久没有关注这方面的问题了,平时大部分时候还是做批量操作 。在这种情况下(CPU密集),异步、协程这些意义就不大了,甚至可能进一步拖慢处理时间。 但是在IO这一块的零碎处理是比较重要的,可以更快,且更省资源。很早的时候&…

什么是通配符SSL证书?要怎么申请?

通配符SSL证书的作用主要是为了方便管理和加密具有多个子域名的网站。它能够保护一个主域名及其所有的同级子域名,无论子域名的数量多少或名称如何变化。使用一个通配符证书,你可以为像 *.example.com 这样的设置加密,这样不论是 blog.exampl…

Mysql:通过一张表里的父子级,递归查询并且分组分级

表:gc_jzst_single_base 需求:要求返回这张表里符合条件的数据,且有父子级关系的,展示为同一组且分级,给后续业务调用 代码 WITH RECURSIVE t1 AS (SELECTsingle_id,old_build_single_id,single_name,bulid_code,1 A…