如何检测安装了哪个版本的Internet Explorer?

12

最好的方法是查看Windows注册表的卸载键吗?是否有Microsoft API调用可以提供此信息,并且从XP开始支持?

检测本地计算机安装了哪个版本的Internet Explorer的最佳方法是什么?

5个回答

21

您需要查看注册表,但不是在卸载键中。相反,找到路径为HKLM\Software\Microsoft\Internet Explorer的键,并读取名为Version的值。

对于更新版本(IE 10及以上),Version为9.x(例如,IE 10为9.10.xxxx),新的svcVersion值给出了真正的IE版本。

微软甚至推荐使用这种技术,请参见此处


令人惊讶的是,这方面没有API可用,检查此注册表键通常被认为是最佳选择。 - EricLaw
链接(很可能)已损坏。 - Ofek Shilon

4
如果您需要在Web应用程序中了解IE版本,可以获取User-Agent或使用JavaScript:
以下是微软提供的如何获取Internet Explorer版本的示例: http://msdn.microsoft.com/en-us/library/ms537509(VS.85).aspx 如果您需要检测桌面程序中的IE版本,请读取Windows注册表。
该注册表键HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer包含带有IE版本的属性Version。

4
版本号值似乎不包含您最可能需要的Internet Explorer版本信息。相反,查看svcVersion或svcUpdateVersion以获取信息。
例如,我正在运行IE 10,如果我查询版本注册表值,则返回9.10.9200.16798,但如果我查询svcUpdateVersion,则返回10.0.13。后者对应于实际的Internet Explorer版本,即10。
REG QUERY“ HKLM \ Software \ Microsoft \ Internet Explorer” / v版本 HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Internet Explorer      版本     REG_SZ     9.10.9200.16798 REG QUERY“ HKLM \ Software \ Microsoft \ Internet Explorer” / v svcUpdateVersion HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Internet Explorer      svcUpdateVersion     REG_SZ     10.0.13 REG QUERY“ HKLM \ Software \ Microsoft \ Internet Explorer” / v svcVersion HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Internet Explorer      svcVersion     REG_SZ     10.0.9200.16798

2

我希望挑战检查注册表的常规智慧。请考虑System.Windows.Forms.WebView.Version的参考源:

string mshtmlPath = 
   Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "mshtml.dll");
FileVersionInfofvi = FileVersionInfo.GetVersionInfo(mshtmlPath);
return new Version(
             fvi.FileMajorPart, fvi.FileMinorPart, fvi.FileBuildPart, fvi.FilePrivatePart);

假设编写 WebView 类的人知道他们在做什么。

0

您可以使用此脚本在多台计算机上了解IE版本:

@Echo off

Cls

MD C:\SYSADMIT > NUL 

Echo. > c:\SYSADMIT\Resultados.txt

SET ListaEquipos=C:\SYSADMIT\ListaEquipos.txt

For /F "Tokens=*" %%z In (%ListaEquipos%) Do (

echo %%z  >> c:\SYSADMIT\Resultados.txt 

reg query "\\%%z\hklm\Software\Microsoft\Internet Explorer" /v svcVersion >> c:\SYSADMIT\Resultados.txt

)

在文件“ListaEquipos.txt”中,有一些计算机的清单。

还需要检查目标计算机上是否启用了“RemoteRegistry”服务。

摘自: http://www.sysadmit.com/2017/08/windows-buscar-version-de-internet-explorer-en-equipo-remoto.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接