如何检查是否安装了Windows Installer 3.1或更高版本?

时间:2021-11-22 19:51:52

I need to know this since this is a pre-req for .NET 3.5 and if I'm including the .NET bootstrapper, I should also see if Windows Installer 3.1 is needed.

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

Right now I'm checking for the registry key:

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

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

Which will check for Windows Installer 3.1 but I suspect it doesn't check for higher versions. (Haven't been able to confirm or deny that)

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

What registry key should I look at to find this information?

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

Edit: I need to check this in Inno Setup which is what I'm using as my bootstrapper, and I'm not sure how to check a dll version in there.

编辑:我需要在Inno Setup中检查这个,这是我用作我的引导程序,我不知道如何检查那里的DLL版本。

5 个解决方案

#1


14  

locate the installer msi.dll with this registry path: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer

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

value: InstallerLocation

then get the version information from that file.

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

update: the way above is old! new way to detect the version is documented here: http://msdn.microsoft.com/en-us/library/aa368280%28VS.85%29.aspx

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

#2


13  

On the "Run" window, type "msiexec". A window will come up showing the Windows Installer version on the first line.

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

#3


3  

If you want to check the version of the Windows Installer on your system, check the version of MSI.DLL in the Windows\System 32 folder.

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

Right click on MSI.DLL , select properties -> go to Details tab and check file version.

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

#4


1  

If this is inside the MSI file itself, you can check for the VersionMsi property.

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

#5


0  

Please check this link may help you as already works for me for Windows 7, hopefully may work for other versions of windows as well to check Windows Installer version.

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

#1


14  

locate the installer msi.dll with this registry path: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer

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

value: InstallerLocation

then get the version information from that file.

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

update: the way above is old! new way to detect the version is documented here: http://msdn.microsoft.com/en-us/library/aa368280%28VS.85%29.aspx

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

#2


13  

On the "Run" window, type "msiexec". A window will come up showing the Windows Installer version on the first line.

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

#3


3  

If you want to check the version of the Windows Installer on your system, check the version of MSI.DLL in the Windows\System 32 folder.

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

Right click on MSI.DLL , select properties -> go to Details tab and check file version.

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

#4


1  

If this is inside the MSI file itself, you can check for the VersionMsi property.

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

#5


0  

Please check this link may help you as already works for me for Windows 7, hopefully may work for other versions of windows as well to check Windows Installer version.

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