0

我试图为 Windows 窗体应用程序创建一个 msi 设置。只有在本地系统上安装了 Access 数据库引擎 12.0 时,才应安装此 msi。

因此,我尝试在 Visual Studio 安装程序中设置午餐条件。现在,如果我想将此驱动程序作为安装新应用程序的先决条件,我需要此驱动程序的 COMPONENETID 以便我可以在启动条件下设置一个条件。

我有 Access 数据库引擎 12.0 的和 exe,但无法弄清楚它的组件 ID。我尝试为此目的使用 ORCA 工具,但 ORCA 工具仅适用于 .msi 而不是 .exe。有人可以帮我解决这个问题吗?提前致谢。

4

2 回答 2

1

如果您有像 WinZip 这样的工具(在撰写本文时有一个免费的 eval 版本),您可以打开该 exe,WinZip 会为您提取文件而无需安装它。将有一个 MSI 文件(我上次查看时称为 AceRedist.msi),然后您可以按照您描述的方式使用 Orca。

于 2015-07-07T20:07:09.680 回答
0

您是否有任何理由采用这种方法来检测先决条件的存在?在您的情况下,这里的先决条件似乎是 Access 数据库引擎 12.0。

恕我直言,肯定有标准的方法来检测 Access 数据库引擎 12.0 的存在。一个简单的谷歌带我到以下链接:

https://community.flexerasoftware.com/showthread.php?201524-Determine-Microsoft-Database-Access-Engine-Version

依赖来自 3rd 方供应商的特定组件 GUID 肯定是有风险的,并且可能导致不必要的维护。

问候, 基兰·赫格德

于 2015-07-08T05:21:06.840 回答