Windows installer 为什么是;msiexec/qn“;仍然显示命令提示符吗?

Windows installer 为什么是;msiexec/qn“;仍然显示命令提示符吗?,windows-installer,nsis,Windows Installer,Nsis,我想在NSIS脚本中使用此msiexec命令安静地安装MSI包 Exec '"msiExec" /qn /package "$INSTDIR\mypackage.msi" INSTALLDIR="$destinationDir"' 但它仍会在一瞬间显示命令提示。 我还尝试了参数/quiet,但没有区别。 是否有其他方法可以安静地安装MSI包“完整” 听起来好像命令行中有错误。不过我不熟悉NSIS。正常安静模式MSI安装命令为: msiexec.exe/I“C:\TestInstall.msi”

我想在NSIS脚本中使用此msiexec命令安静地安装MSI包

Exec '"msiExec" /qn /package "$INSTDIR\mypackage.msi"  INSTALLDIR="$destinationDir"'
但它仍会在一瞬间显示命令提示。
我还尝试了参数
/quiet
,但没有区别。


是否有其他方法可以安静地安装MSI包“完整”

听起来好像命令行中有错误。不过我不熟悉NSIS。正常安静模式MSI安装命令为:

msiexec.exe/I“C:\TestInstall.msi”/QN

尝试在此线程中运行该工具以帮助您处理复杂性:。这是一个非常有效的工具,名为Wise Solutions提供的“Windows Installer命令行生成器”。您可以使用它来试验命令行,直到它按您希望的方式运行为止

当您要应用多个转换、设置多个属性和启用日志记录时,msiexec.exe命令行可能会变得极其复杂。以下是一个示例:

msiexec.exe /I "C:\Installer.msi" /QN /L* "C:\logs\msilog.log" ALLUSERS=1 TRANSFORMS="C:\Transform.mst;C:\1031.mst"
Exec的“msiExec”
在我的系统上不显示控制台


这可能是msi中的自定义操作吗?如果您使用Ctrl+T监控系统,您应该能够看到Windows7+

上conhost.exe的父级是谁,我认为命令行不是问题所在,因为当我在不使用“/qn”参数的情况下运行命令行时,它正在执行我所期望的操作。当您说它在瞬间显示命令提示符时,您到底看到了什么?我从未见过,我想知道这是否与NSIS脚本有关。如果从cmd类型的命令中看到命令窗口,那么它不是msiexec,而是NSIS使用类似于命令行提示符的东西来运行msiexec。@PhilDW:Exec/ExecWait是CreateProcess的薄包装,像nsExec这样的控制台执行器都是插件…@PhilDW:它看起来像普通cmd.exe的窗口,但里面没有文本。或者它太快了,看不到文本。这不是一个大问题,但我想知道我是否把“/quiet”参数搞砸了。我真的不认为这与msiexec有什么关系-如果你看到一个cmd窗口,它一定意味着有什么东西通过cmd窗口启动它。当您以任何其他方式启动msiexec时,都没有cmd窗口,例如从“开始”菜单运行。msiexec是一个GUI应用程序,因此我不确定该控制台来自何处。您可能需要使用ExecWait和完整路径……这是什么
Exec
命令,它来自哪里?(你是如何发射的?)