Installation MSIEXEC-安静和被动之间的区别

Installation MSIEXEC-安静和被动之间的区别,installation,windows-installer,Installation,Windows Installer,所以根据msdn 安静模式,无用户交互 /安静的 无人值守模式-仅进度条 /被动的 因此,如果我想安装MSI,我通常使用/qn/quiet,一切正常 我只是想知道被动语态是用来做什么的 我在msdn中看到的一件事就是/q与/qn相同 dotNetFx45_Full_x86_x64.exe/q/norestart 当MSI 3.0问世时,我相信他们将创建一组适用于所有安装的命令行选项,因此被动将适用于基于MSI的设置以及其他设置。所以被动语态相当于/qb(或类似的语态)。我更喜欢旧的/q选项,因为

所以根据msdn

安静模式,无用户交互 /安静的

无人值守模式-仅进度条 /被动的

因此,如果我想安装MSI,我通常使用/qn/quiet,一切正常

我只是想知道被动语态是用来做什么的

我在msdn中看到的一件事就是/q与/qn相同

dotNetFx45_Full_x86_x64.exe/q/norestart


当MSI 3.0问世时,我相信他们将创建一组适用于所有安装的命令行选项,因此被动将适用于基于MSI的设置以及其他设置。所以被动语态相当于/qb(或类似的语态)。我更喜欢旧的/q选项,因为它们更明确地显示了什么,并且有更多的选择。只需使用适用于您的命令

通常,
/passive
显示进度条,而
/quiet
不显示进度条。但是它可以根据MSI的内容而有所不同。

严格来说,您提到的dotNet Fx安装是一个引导程序,而不是MSI或msiexec。它确实调用了许多内部MSI,并且主要以与MSI一致的方式接受开关和传递参数,但它不是MSI

/q{n | b | r | f | n+| b+| b-}在MSI 1.0中引入,其中/passive和其他在3.0中引入,以便更容易调用常见场景。例如/passive相当于/qb!-REBOOTPROMPT=S

关于/QN vs/QB,需要注意的一点是/QN无法执行UAC提升提示,因为它没有UI。它只会返回一个失败代码/QB可以,因为它有一个UI

参考资料:

/qn无用户界面
/安静无用户交互

/passive无人值守模式(仅进度条)

不会改变。/qb aka/passive模式下的进度条不依赖于任何编写的UI。@ChristopherPaint:我相当肯定我见过安装程序在
/quiet
显示UI,我想我见过
/passive
不显示UI的情况(或者不适用于整个安装)。通常,当MSI实际上只是一个本地安装程序的包装器时,我认为。但有可能是我记错了。完全有可能创建一个不尊重UILevel的MSI,在不应该的时候弹出一个UI。。。。。不要那样做:)好吧,很好。但我是从某人编写脚本或软件包的角度来看问题的,该脚本或软件包针对第三方MSI调用
msiexec
,而不是从某人编写MSI的角度来看问题的。现在我再看一遍这个问题,我不确定OP的意图是什么。:-)做了这么多次之后,我可以数一数,我想说那个人(让我们称他们为集成商)必须学习MSI的方法,包括所有错误的方法,这样他们才能防范不良行为。这实际上是一个评论,而不是一个答案。再重复一点。