windows – 如何以编程方式从脚本中确定已安装的IE版本

前端之家收集整理的这篇文章主要介绍了windows – 如何以编程方式从脚本中确定已安装的IE版本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有一个基于硒网格的自动化测试集群.

为了管理集群,我构建了一组Rake(Ruby)任务,可以启动,重启,ping和停止节点.我正在测试我们的应用程序,包括IE6,IE7和IE8.这意味着群集中的每个节点都必须知道安装了哪个版本的IE,以便它可以声明正确的selenium-grid配置文件名称(例如:“Windows XP上的IE6”与“Windows Vista上的IE8”),所以某些测试可以针对这些浏览器编写.

我的问题:

我想在这里减少配置工作.如何以编程方式确定当前系统上运行的IE版本?我尝试了以下技术:

wmic product where "Vendor like '%Microsoft%'" get Name,Version

但这只返回随Windows Installer一起安装的程序版本,因此IE不会显示在此列表中.

理想情况下,我希望能够从Rake脚本中确定这个,或者至少可以从Rake脚本中调用.

您可以使用WMI,我知道它不是rake脚本,但您可以运行脚本(或创建.NET应用程序)并将结果提供给您的应用程序.

这是一种黑客攻击,但至少它会起作用.这是来自technet的一些代码.

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & _
    "\root\cimv2\Applications\MicrosoftIE")

Set colIESettings = objWMIService.ExecQuery _
    ("Select * from MicrosoftIE_Summary")

For Each strIESetting in colIESettings
    Wscript.Echo strIESetting.Version
Next

Source

获得此信息后,可以使用命令行将信息传递到rake脚本.

rake YourScript[<argument from vbscript>]

编辑:您可以将此代码复制/粘贴到文件中,将其命名为whatever.vbs,并使用cscript命令执行脚本.

cscript //Nologo ie_version.vbs

猜你在找的Windows相关文章