我很难让 wix 3.7 burn bundle 工作。我想检查系统上是否存在特定的 COM 库(这是先决条件)。我试过了:
util:RegistrySearch
forSOFTWARE\Classes\Installer\Assemblies\Global
underinterop.name, Version=1.170.0.0, ...
- 我不能添加通配符,并且键名包含版本util:FileSearch
for[%WINDIR%]\Windows\assembly\GAC_MSIL\interop.name\1.170.0.0__a59bfa3a209beb60\interop.name.dll
- 再次,不能添加通配符,我不确定我是否可以假设它总是在 GAC_MSIL 下util:ComponentSearch
- 我不确定如何找到要搜索的 guid - 无论我尝试什么,它似乎总是返回 false。- 非实用程序,常规文件搜索 - 似乎在引导程序中不起作用。
- 我也注意到了一个
HKCR\TypeLib\{F1E91071-83CC-4766-90BA-E038B005ACE}
条目,但同样,我不确定检查它是否可靠?
有什么简单的方法可以检查 GAC 中是否存在 COM dll?我不介意在某些边界情况下(例如不是完全卸载)它会遗漏一些东西,我只想涵盖大多数情况并避免由于不可靠的检查而阻止安装。