我正在尝试从 FTDI 驱动程序中执行 exe 文件的静默安装。我从这里获取这些驱动程序。下载后,当我使用 7-zip 进一步提取 .exe 时,它会创建一个包含 dll 和 dpinst-amd64.exe 的文件夹,如下面的屏幕截图所示。当我尝试命令时
dpinst-amd64.exe /q /se
在命令提示符下,它工作正常。但使用 Wix 安装程序执行此操作无法运行该包。但是其他包在此代码中安装正常。请帮忙。
这是我在 Bundle.wxs 中的内容
<Chain>
<ExePackage Id="FTDIDriversInstaller"
SourceFile="$(var.DependencyFolder)\FTDIDrivers_Setup\dpinst-amd64.exe"
InstallCommand="/s /se"
Compressed="yes"/>
<!--VC++ Redistributable required to ensure the ADE installer executes without errors-->
<ExePackage Id="VCRedistributableInstaller"
SourceFile="$(var.DependencyFolder)\VC_redist.x64.exe"
InstallCommand="/quiet /norestart"
Compressed="yes" />
<ExePackage Id="VCRedistributable2010Installer"
SourceFile="$(var.DependencyFolder)\VCREDIST_2010_x64.exe"
InstallCommand="/quiet /norestart"
Compressed="yes" />
<MsiPackage Id="LicenseGeneratorInstaller"
SourceFile="$(var.ReleaseFolder)\!(loc.CULTURE)\FactoryToolsInstall.msi"
Compressed="yes"
DisplayInternalUI="yes" />
<ExePackage Id="AccessDatabaseEngineInstaller"
SourceFile="$(var.DependencyFolder)\AccessDatabaseEngine_X64.exe"
InstallCommand="/quiet"
Compressed="yes" />
</Chain>
这是我在日志文件中看到的内容:
- [1740:173C][2024-11-29T12:25:25]i305:已验证获取的有效负载:FTDIDriversInstaller,路径为:C:\ ProgramData \ Package Cache.unverified \ FTDIDriversInstaller,移动到:C:\ ProgramData \ Package Cache \ A6D6831A4A097BD47AF267727A4AD6B38B14CDE3 \ dpinst-amd64.exe。
- [1740:173C][2024-11-29T12:25:26]i304:已验证现有有效负载:VCRedistributableInstaller,路径为:C:\ ProgramData \ Package Cache \ BA92A00F0F55DCAE85C1BBD098EFE606BD080B3C \ VC_redist.x64.exe。
- [1740:173C][2024-11-29T12:25:26]i304:已验证现有有效负载:VCRedistributable2010Installer,路径为:C:\ ProgramData \ Package Cache \027D0C2749EC5EB21B031F46AEE14C905206F482 \VCREDIST_2010_x64.exe。
- [1740:173C][2024-11-29T12:25:29]i304:已验证现有有效负载:SQL2017Express,路径为:C:\ ProgramData \ Package Cache \ E0A5A388255244F1F5EB2FBF46BDC7292F7E3D8E \ Redist \ SQLEXPR_x64_ENU.exe。
- [1740:173C][2024-11-29T12:25:30]i304:已验证现有有效负载:PharmSpecInstaller,路径为:C:\ ProgramData \ Package Cache{04E45023-61F9-47AB-8E79-D9A2FE234FC8}v3.5.33 \PharmSpec.msi。
- [1740:173C][2024-11-29T12:25:33]i304:已验证现有有效负载:AccessDatabaseEngineInstaller,路径为:C:\ ProgramData \ Package Cache \ 277EA5EBCD18B8B98D82C9DC53399B4FE864CA51 \ AccessDatabaseEngine_X64.exe。
- [1740:1748] [2024-11-29T12:25:33]i301:应用执行包:FTDIDriversInstaller,操作:安装,路径:C:\ ProgramData \ Package Cache \ A6D6831A4A097BD47AF267727A4AD6B38B14CDE3 \ dpinst-amd64.exe,参数:'“C:\ ProgramData \ Package Cache \ A6D6831A4A097BD47AF267727A4AD6B38B14CDE3 \ dpinst-amd64.exe”/ q / se'
- [1740:1748] [2024-11-29T12:25:33] e000:错误 0x80000000:进程返回错误:0x80000000
- [1740:1748][2024-11-29T12:25:33]e000:错误 0x80000000:无法执行 EXE 包。
- [0F88:1444][2024-11-29T12:25:33]e000:错误 0x80000000:无法配置每台机器的 EXE 包。
- [0F88:1444][2024-11-29T12:25:33]i319:已应用执行包:FTDIDriversInstaller,结果:0x80000000,重新启动:无
- [0F88:1444][2024-11-29T12:25:33]e000:错误 0x80000000:无法执行 EXE 包。
- [1740:1748][2024-11-29T12:25:33]i351:从路径 C:\ProgramData\Package Cache\A6D6831A4A097BD47AF267727A4AD6B38B14CDE3\ 删除缓存包:FTDIDriversInstaller
您可能需要将所有这些松散的文件作为 Payload 元素添加到 dpinst ExePackage 元素下,以便它们在命令运行时都可用。