当我运行MSI(没有参数)时,我通常必须通过对话框单击我的方式并选择是否要安装到当前用户/所有用户,目标目录等。 使用/ qn(静音模式)运行MSI时会发生什么。如何找到所有这些对话框自动选择的答案?
答案 0 :(得分:6)
MSI基本上是一个数据库。您可以使用Orca打开它并查看/更改设置。
我希望这至少使你朝着正确的方向发展。
编辑:
例如,下载WiX 3.0安装程序并在Orca中打开它。
WIXUI_INSTALLDIR
属性设置为APPLICATIONFOLDER
。 APPLICATIONFOLDER
设置为默认值为“vqee3ld3|Windows Installer XML v3
”或类似内容。 InstallDirDlg
触发事件SetTargetPath。此事件设置的参数为WIXUI_INSTALLDIR
,后者又设置APPLICATIONFOLDER
您可以尝试编辑这些属性并运行安装程序以查看属性的更改方式。如果您有要设置的默认属性,则可以运行。例如,关闭Orca以释放msi文件上的锁并运行:
msiexec /i Wix3.msi APPLICATIONFOLDER="C:\Program Files\WiX" /qn
中MSI表结构的更多信息
答案 1 :(得分:1)
您可以通过命令行设置PUBLIC属性是正确的。这些属性始终为大写,并且通常始终列在“属性”表中,但不保证是这种情况。通过查看Property表,您应该能够解码每个公共财产的功能。如果没有,通常会有PDF或readme.txt形式的MSI文档,可以提供帮助。
使用正确的工具,您还可以查看每个MSI对话框的详细信息,并检查已定义的事件以设置它们。这需要一个工具,如Installshield或Wise。
静默安装的另一个可能选项是我刚才意识到的内置MSI功能:AdminProperties属性。请参阅此处的信息:http://msdn.microsoft.com/en-us/library/aa367542(v=vs.85).aspx