脚本控制IE安全级别设置

拿我自身负责的项目举个例子。

           前提:项目中用到一些前端的ActiveX控件支持。比如在jsp界面中需要调取某个控件的方法执行一些业务逻辑。在项目中是一个执行打印的操作。首先先获取到这个控件。如下图:

         CocPrint是一个ocx的控件。需要先在计算机系统上安装,在执行这段代码的时候出现不能创建对象的异常情况。是因为IE浏览器中的安全级别设置没有进行调整,IE就是不让用户使用这个控件,你说生气不。因此需要进行调整IE安全级别设置。于是出了个IE安全级别设置操作手册。但是用户说操作太复杂,你说生气不。因此想了个办法,在脚本中,来执行调整IE安全级别的自动设置。流程如下:

         新建xxxx.bat文件。用笔记本格式(我本地使用的是Notepad++)打开。然后写入格式为REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2400"              /t REG_DWORD /d 0x00000000 /f > nul 的信息,即可运行成功。接下来详细解释一下这段话的含义。

         HKEY_CURRENT_USER指的是当前登录用户,此设置不会影响到其它登录的账号。

        Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3为关键字的路径。最后的3就比较有意思,具体解释为:计算机定义的每个安全区域的项:Zones 。默认情况下,定义5个区域(编号从0到4:0:我的电脑;1:本地Intranet区域;2.受信任的站点区域;3.Internet区域;4.受限制的站点区域)。如下图:

         2400为需要设置的选项代号。比如2400表示  xaml 浏览器应用程序。

         设置为0x00000000则将具体操作设置为允许;设置为0x00000001则导致出现提示;设置为0x00000003则禁止执行具体操作。

         讲解已经结束。接下来直接贴脚本代码, 我是直接把Internet选项中的安全里的4个安全设置全部都改了。 我将注释信息也写进代码中了,方便理解。脚本名称为IE_config.bat。代码如下:

@ECHO OFF
ECHO 欢迎使用   开始系统设置...
ECHO 该设置不会对您的电脑使用带来影响
ECHO ---设置IE信任区域中...
REM 注释:首先介绍计算机定义的每个安全区域的项:Zones 。默认情况下,定义5个区域(编号从0到4:0:我的电脑;1:本地Intranet区域;2.受信任的站点区域;3.Internet区域;4.受限制的站点区域)
REM 注释:其中HKEY_CURRENT_USER指的是当前登录用户,此设置不会影响到其它登录的账号。
REM 注释:Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3为关键字的路径,根据之前关于Zones选项的解释,此路径不难看懂(末位3代表什么请看注释第一行括号内)。
REM 注释:通常,设置为0x00000000则将具体操作设置为允许;设置为0x00000001则导致出现提示;设置为0x00000003则禁止执行具体操作。
REM 注释:2400为需要设置的选项代号。

REM 3:Internet区域
REM .NET Framework
REM 	2400  	xaml	浏览器应用程序
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2400"              /t REG_DWORD /d 0x00000000 /f > nul
REM 	2401	xps	文档
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2401"              /t REG_DWORD /d 0x00000000 /f > nul
REM 	2402	松散	saml
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2402"              /t REG_DWORD /d 0x00000000 /f > nul

REM .NET Framework	相关组件
REM 	2007:带有清单的权限的组件
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2007"              /t REG_DWORD /d 0x00000000 /f > nul
REM 	2004:运行未用	Authenticode	签名的.NET组件
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2004"              /t REG_DWORD /d 0x00000000 /f > nul
REM 	2001:运行已用	Authenticode	签名的.NET组件 
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2001"              /t REG_DWORD /d 0x00000000 /f > nul
REM  ActiveX 控件和插件
REM 	2201:ActiveX	控件自动提示
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "2201"              /t REG_DWORD /d 0x00000000 /f > nul
REM		1405:对标记为可安全执行脚本的	ActiveX	控件执行脚本*
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "1405"              /t REG_DWORD /d 0x00000000 /f > nul
REM		1201:对没有标记为安全的	ActiveX	控件进行初始化和脚本运行 
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v "1201"              /t REG_DWORD /d 0x00000000 /f > nul
REM 	2000:二进制和脚本行为
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3"
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
A: 首先,需要了解ie浏览器的安全选项有哪些以及对应的注册表键值。参考微软官方文档: https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ms537170(v=vs.85)?redirectedfrom=MSDN 然后根据文档中的说明,可以使用Windows脚本语言(如VBScript)来修改注册表键值,以实现启用ie浏览器的安全选项。 以下是一个示例脚本: ```vbscript ' 恢复ie浏览器的默认安全选项 ' 注:需要管理员权限运行 Const HKEY_CURRENT_USER = &H80000001 'DIM RegLocation Dim WshShell, fso Set WshShell = CreateObject("WScript.Shell") Set fso = CreateObject("Scripting.FileSystemObject") If WScript.Arguments.Count >= 1 Then RegLocation = WScript.Arguments.Item(0) Else RegLocation = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones" End If Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.Namespace(fso.GetParentFolderName(wscript.ScriptFullName)) Set objFolderItem = objFolder.ParseName(fso.GetFileName(wscript.ScriptFullName)) If objFolderItem.IsFolder Then WScript.Echo "Please double-click the script file to launch it." WScript.Quit End If ' 修改每个区域的安全选项 For i = 0 To 4 EnableIEOption(i, RegLocation) Next WScript.Echo "IE security options have been enabled for all zones." Function EnableIEOption(zone, RegLoc) ' 定义注册表路径和键名 Dim RegPath RegPath = RegLoc & "\" & zone Dim KeyName Select Case zone Case 0 KeyName = "2500" Case 1 KeyName = "2501" Case 2 KeyName = "2502" Case 3 KeyName = "2503" Case 4 KeyName = "2504" Case Else Exit Function End Select ' 设置对应键值的数值为 0 WshShell.RegWrite "HKEY_CURRENT_USER\" & RegPath & "\" & KeyName, 0, "REG_DWORD" End Function ``` 通过双击运行以上脚本,即可将ie浏览器的安全选项全部启用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值