欢迎来到天天文库
浏览记录
ID:51436512
大小:25.34 KB
页数:8页
时间:2020-03-24
《检测IE是否启用ActiveX的VBS脚本.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、检测IE是否启用ActiveX的VBS脚本您好,脚本专家!如何知道InternetExplorer中是否启用了ActiveX?--JV答:您好,JV。您一定要问这个问题,是吗?实际上,这并不是一个特别难回答的问题,只是有点复杂。不过,那与配置InternetExplorer的方式紧密相关,而与通过编写一个脚本来检索此信息关系不大。首先,InternetExplorer没有管理对象模型;相反,我们能够通过编程的方式检索InternetExplorer设置和属性值的唯一方法就是通过编写一个脚本来从注册表中获取此信息。这相当容易;我们经
2、常在本专栏中使用注册表读取的脚本。最为棘手的部分就是搞清楚需要读取哪个注册表值,并知道如何解释返回的数据。注意:另一个棘手的部分在于知道您对哪个ActiveX设置感兴趣;不论好坏,InternetExplorer有与ActiveX控件相关的多个设置。在今天的专栏中,我们假定您要读取此设置的值:运行ActiveX控件和插件。让我们先从搞清楚需要修改哪些注册表值开始。实际上,InternetExplorer安全设置没有全局设置;相反,这些设置由InternetExplorer区域进行管理。有四个这样的安全区域;区域名及其值如下表所示:
3、区域名区域值Intranet站点1受信任的站点2Internet站点3受限制的站点4可在注册表的HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternetSettingsZones部分中找到InternetExplorer安全区域的设置;要访问某个特定区域,您需要访问与该区域对应的子项。要确定相应的子项,只需将区域值追加到前面的注册表路径即可。例如,要获取Internet站点区域(值3)的设置,您需要访问以下注册表子项:HKEY_CURRENT_US
4、ERSoftwareMicrosoftWindowsCurrentVersionInternetSettingsZones3您能看到3被追加到了末尾处。要访问Intranet站点区域(值1)的设置?没问题:HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternetSettingsZones1找到正确的注册表子项后,您需要知道要读取哪个注册表值。遗憾的是(至少对于脚本编写者来说),这些注册表值的名称有点含糊;例如,我们感兴趣的名称为120
5、0。(为什么是这样呢?我们不知道。)那么,我们已准备最终编写一个脚本并真的在此执行一些操作吗?几乎是这样。您需要知道的另一件事就是配置信息作为双字节(数字)值被存储在注册表中。如果您知道ActiveX控件被配置为3而不是65536,这会有所帮助吗?可能没有。不过,下表可能有所帮助:注册表值用户界面值0Enabled1Prompt3Disabled65536AdministratorApproved不,最后一个值并非印刷错误,它的确为65536。自己去想吧。那好,现在我们就准备编写一个脚本。下面的这个示例脚本可检索Intranet站
6、点区域(区域值1)的设置信息:HKEY_CURRENT_USER=&H80000001strComputer="."SetobjReg=GetObject("winmgmts:\"&strComputer&"rootdefault:StdRegProv")strKeyPath="SoftwareMicrosoftWindowsCurrentVersionInternetSettingsZones1"ValueName="1200"objReg.GetDWORDValueHKEY_CURRENT_USER,strK
7、eyPath,ValueName,dwValueWscript.Echo"RunActiveXControlsandPlug-ins"IfIsNull(dwValue)ThenWscript.Echo"Intranetsites:ThevalueiseitherNullorcouldnotbefoundintheregistry."ElseIfdwValue=0ThenWscript.Echo"Intranetsites:Enabled"ElseIfdwValue=1ThenWscript.Echo"Intranetsites:P
8、rompt"ElseIfdwValue=3ThenWscript.Echo"Intranetsites:Disabled"ElseIfdwValue=65536ThenWscript.Echo"Intranetsites:Administrator
此文档下载收益归作者所有