[已解决]请教各位,如何判断IE6还是IE7呢?
本帖最后由 smooth 于 2010-11-9 08:25 编辑看了帮助了,使用_IE_VersionInfo ,但是不管是IE6还是IE7,都是返回V2.4-0. 这个是返回UDF的版本。。。不是IE的,实现这个要用COM吧 试试这个有用吗?
$ver=_ieVersion()
MsgBox(0,0,$ver)
Func _ieVersion()
Local $wbemFlagReturnImmediately = 0x10
Local $wbemFlagForwardOnly = 0x20
Local $colItems = ""
Local $strComputer = "localhost"
Local $Output=""
Local $objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2\Applications\MicrosoftIE")
$colItems = $objWMIService.ExecQuery("SELECT * FROM MicrosoftIE_Summary", "WQL", _
$wbemFlagReturnImmediately + $wbemFlagForwardOnly)
If IsObj($colItems) then
For $objItem In $colItems
$Output = $objItem.Version
Next
Return $Output
Else
Return -1
Endif
EndFunc
回复 3# 3mile
能用,就是太复杂了。谢谢。 filegetversion{:face (303):} 回复 3# 3mile
在WIN7出现错误:
D:\My_\test.au3 (11) : ==> ???????????("Object").: 回复 5# netegg
$ver = FileGetVersion("iexplore.exe")
MsgBox(0, "资源管理器版本", $ver)
WIN7显示结果:
0.0.0.0 回复 7# newuser
试试这个
#include <IE.au3>
$oIE=_IECreate ("www.baidu.com", 1,0)
$verinfo=_IEPropertyGet($oIE,'appversion')
$verinfo_array=StringSplit($verinfo,';')
MsgBox(0,'IE_ver',$verinfo_array) 本帖最后由 netegg 于 2010-11-4 19:56 编辑
回复 7# newuser
$ver = FileGetVersion(@ProgramFilesDir & "\Internet Explorer\iexplore.exe") 回复 3# 3mile
3mile真强大,精通WIM 回复 10# hzxymkb
离精通差远了,还是只小小菜鸟。 回复 9# netegg
又是路径问题 ,还以为返回值就是0.0.0.0,谢谢. 回复 3# 3mile
为什么在WIN2003正常,在WIN7就不正常?OS的原因吗!
下面的那段代码我回家再试!
谢谢. 本帖最后由 smooth 于 2010-11-9 08:10 编辑
$IEDir = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer", "Version")
$result = StringLeft($IEDir, 1)
If $result = "6" Then
这是我的做法,感觉还行吧。
蛋蛋的更强大,直接从文件里查找。
感谢各位的热心帮助。
页:
[1]