我有一个我想静默安装的.msi文件。但是,它似乎有一个依赖模块,一直要求用户输入。所以包的第一部分已经安装,但是当它到达依赖模块时,它要求用户输入。我使用的命令是msiexec / i setup.msi / quiet。
我还想在安装期间从默认设置更改安装的目标文件夹。我无法用msiexec做到这一点。我读过可以使用转换的地方,但我不知道要编辑的属性的名称。
所以我决定将.msi文件转换为.exe,因为我知道我可以为.exe创建一个答案文件。但是,生成的.exe文件无法识别静默开关,也不会在提供/ r开关时创建和应答文件。我使用Ultimate MSI进行EXE转换器试用进行转换。所以我的问题是:
如果可以避免,我宁愿不回复软件供应商。
答案 0 :(得分:0)
创建转换是正确的做法。要修改的确切表数据取决于所讨论的MSI。某些MSI需要修改Directory表,而set需要修改CustomAction表。 (类型51或类型35 CA覆盖目录表中的默认值。)
对于依赖性检查,可以是LaunchConditions表或在InstallUISequence和/或InstallExecuteSequence表中安排的类型19 CA.
如果我能看到MSI,我可以给出更好的答案。一旦你有一个正确的变换,命令行将是:
msiexec /I foo.msi /qn TRANSFORMS=foo.mst