VISTA系统如何用WMI获取IE的版本呢?
vista_home用下面WMI代码不能获取IE的版本号,XP 是可以获取得到的$strComputer = "."
$objWMIService = ObjGet("winmgmts:\\" & $strComputer &"\root\cimv2\Applications\MicrosoftIE")
$colIESettings = $objWMIService.ExecQuery("Select * fromMicrosoftIE_FileVersion")
For $strIESetting in $colIESettings
MsgBox(1,"IE",$strIESetting.Version )
ExitLoop
Next
虽然也可以用注册表获取,但还是想通过WMI 来获取。
[ 本帖最后由 auto 于 2009-1-18 09:21 编辑 ] HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer 注册表的方法知道,
用WMI在VISta 下获取DNS(第二个)也会出错
貌似比较多的WMI在VISTA下都会出错
[ 本帖最后由 auto 于 2009-1-17 20:05 编辑 ] 请查询VISTA下的WMI用法。可能部分参数已经更新,所以不适用了的。
没装有VISTA系统,无法判断。 请查询VISTA下的WMI用法。可能部分参数已经更新。。。
请问在哪查询?
WMI的用法是参考WMI生成器和脚本专家的
$str = DllStructCreate("dword;dword;dword;dword;dword")
DllStructSetData($str, 1, DllStructGetSize($str))
DllCall("Shlwapi.dll","long","DllGetVersion","ptr",DllStructGetPtr($str))
MsgBox(64,"IE版本是:",DllStructGetData($str,2)&"." & _
DllStructGetData($str,3)&"." & _
DllStructGetData($str,4))
原帖由 sanhen 于 2009-1-18 00:11 发表 http://www.autoitx.com/images/common/back.gif
$str = DllStructCreate("dword;dword;dword;dword;dword")
DllStructSetData($str, 1, DllStructGetSize($str))
DllCall("Shlwapi.dll","long","DllGetVersion","ptr",DllStructGetPtr($str))
MsgBox(64, ...
嗯..还可以通过API获取啊,虽然不能获取"修正号"后面号码,
但是主版本号和次版本号和修正号都有了,问题基本解决
[ 本帖最后由 auto 于 2009-1-18 09:11 编辑 ] 本帖最后由 文傲 于 2009-10-21 00:57 编辑
方法1,从exe文件
$version = FileGetVersion(@ProgramFilesDir & "\Internet Explorer\iexplore.exe")
MsgBox(0, "IE Version", "Your IE version is: " & $version)
方法2,从注册表
$ie_ver = RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer", "Version")
原文
http://www.autoitscript.com/forum/index.php?showtopic=4036 本帖最后由 ghl781258 于 2011-8-23 20:44 编辑
;;;;获取IE版本号:4种方法
方法1和方法4,在winxp+IE8.0环境下不能获得正确浏览器版本号.
_fangfa4()
Func _fangfa1()
$str = DllStructCreate("dword;dword;dword;dword;dword")
DllStructSetData($str, 1, DllStructGetSize($str))
DllCall("Shlwapi.dll","long","DllGetVersion","ptr",DllStructGetPtr($str))
MsgBox(64,"IE版本是:",DllStructGetData($str,2)&"." & _
DllStructGetData($str,3)&"." & _
DllStructGetData($str,4))
EndFunc
Func _fangfa2()
$version = FileGetVersion(@ProgramFilesDir & "\Internet Explorer\iexplore.exe")
MsgBox(0, "IE Version", "Your IE version is: " & $version)
EndFunc
Func _fangfa3()
$ie_ver = RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer", "Version")
MsgBox(0, 'IE Version', $ie_ver)
EndFunc
Func _fangfa4()
$strComputer = "."
$objWMIService = ObjGet("winmgmts:\\" & $strComputer &"\root\cimv2\Applications\MicrosoftIE")
$colIESettings = $objWMIService.ExecQuery("Select * fromMicrosoftIE_FileVersion")
For $strIESetting in $colIESettings
MsgBox(1,"IE",$strIESetting.Version )
ExitLoop
Next
EndFunc
页:
[1]