Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wix MSI包的静默安装_Wix_Installation_Windows Installer_Advanced Installer - Fatal编程技术网

Wix MSI包的静默安装

Wix MSI包的静默安装,wix,installation,windows-installer,advanced-installer,Wix,Installation,Windows Installer,Advanced Installer,我有一个MSI软件包,如果该软件包尚未安装,我需要安装该软件包。我还需要悄悄地安装它。软件包提示用户执行以下操作: 安装位置(C:\Program Files\Foobar) 安装类型:最小和完全(最小) 我需要使用命令行参数或其他方法覆盖这两个参数。那么我该如何处理这两个问题呢。我将使用VBScript编写脚本。您应该能够使用/quiet或/qn选项和msiexec执行静默安装 MSI包导出公共属性,您可以使用msiexec参数末尾的PROPERTY=value语法设置公共属性 例如,此命

我有一个MSI软件包,如果该软件包尚未安装,我需要安装该软件包。我还需要悄悄地安装它。软件包提示用户执行以下操作:

  • 安装位置(C:\Program Files\Foobar)
  • 安装类型:最小和完全(最小)

我需要使用命令行参数或其他方法覆盖这两个参数。那么我该如何处理这两个问题呢。我将使用VBScript编写脚本。

您应该能够使用
/quiet
/qn
选项和
msiexec
执行静默安装

MSI包导出公共属性,您可以使用
msiexec
参数末尾的
PROPERTY=value
语法设置公共属性

例如,此命令安装一个没有UI和没有重新启动的包,其中包含一个日志和两个属性:

msiexec /i c:\path\to\package.msi /quiet /qn /norestart /log c:\path\to\install.log PROPERTY1=value1 PROPERTY2=value2

您可以通过在“开始->运行”中不带任何选项的情况下运行来读取
msiexec
的选项。

静默安装MSI的正确方法是通过
msiexec.exe命令行
,如下所示:

msiexec.exe /i c:\setup.msi /QN /L*V "C:\Temp\msilog.log"
快速解释:

 /L*V "C:\Temp\msilog.log"= verbose logging
 /QN = run completely silently
 /i = run install sequence 

这里有一个更全面的答案:。此答案提供了有关msiexec.exe命令行选项的详细信息,以及如何查找安装时可在命令行上设置的“公共属性”的说明。每个MSI的这些属性通常不同。

是否有办法找到可接受参数的列表(
PROPERTY1
PROPERTY2
)?以下是预定义的属性列表:每个安装创作工具的安装文件夹属性不同。您使用什么创建MSI?@Cosmin:MSI由支付系统的运行时DLL组成(不是我创建的)。我在看一个叫做Ocra的工具来分析MSI,它给了我一个关于变量“INSTALLLOCATION”的提示。我正在检查。注意:msiexec似乎对指定MSI包的完整文件路径非常挑剔。不要尝试任何
\mypackage.msi
业务。我花了一点时间才弄明白。MS产品的名称实际上是Orca,而不是ocra。可能很难用谷歌搜索拼写错误。你可能会得到很多克里奥尔食谱。。。但不是MSI建设者。