21

我需要知道这一点,因为这是 .NET 3.5 的先决条件,如果我包含 .NET 引导程序,我还应该查看是否需要 Windows Installer 3.1。

现在我正在检查注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Updates\Windows XP\SP3\KB893803v2

它将检查 Windows Installer 3.1,但我怀疑它不会检查更高版本。(无法确认或否认)

我应该查看哪个注册表项来查找此信息?

编辑:我需要在 Inno Setup 中检查这个,这是我用作引导程序的东西,我不确定如何在那里检查 dll 版本。

4

5 回答 5

14

使用此注册表路径找到安装程序 msi.dll:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer

值:安装程序位置

然后从该文件中获取版本信息。

更新:上面的方式很旧!此处记录了检测版本的新方法:http: //msdn.microsoft.com/en-us/library/aa368280%28VS.85%29.aspx

于 2008-12-16T16:23:25.257 回答
13

在“运行”窗口中,键入“msiexec”。将出现一个窗口,在第一行显示 Windows Installer 版本。

于 2010-12-01T17:01:12.810 回答
4

如果要检查系统上 Windows 安装程序 的版本,请检查Windows\System 32 文件夹中的MSI.DLL版本。

右键单击 MSI.DLL ,选择属性 -> 转到详细信息选项卡并检查文件版本。

于 2012-07-18T11:29:41.427 回答
1

如果这在 MSI 文件本身内,您可以检查VersionMsi属性。

于 2008-11-24T23:04:35.813 回答
0

请检查此链接可能对您有所帮助,因为它已经适用于我Windows 7,希望也适用于其他版本的Windows以及检查 Windows Installer 版本。

于 2015-11-24T12:44:51.090 回答