最好的方法是查看Windows注册表的卸载键吗?是否有Microsoft API调用可以提供此信息,并且从XP开始支持?
检测本地计算机安装了哪个版本的Internet Explorer的最佳方法是什么?
最好的方法是查看Windows注册表的卸载键吗?是否有Microsoft API调用可以提供此信息,并且从XP开始支持?
检测本地计算机安装了哪个版本的Internet Explorer的最佳方法是什么?
您需要查看注册表,但不是在卸载键中。相反,找到路径为HKLM\Software\Microsoft\Internet Explorer
的键,并读取名为Version
的值。
对于更新版本(IE 10及以上),Version
为9.x(例如,IE 10为9.10.xxxx),新的svcVersion
值给出了真正的IE版本。
微软甚至推荐使用这种技术,请参见此处。
我希望挑战检查注册表的常规智慧。请考虑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
类的人知道他们在做什么。您可以使用此脚本在多台计算机上了解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