【适用版本】:FusionAccess各版本
【故障模式】:兼容性/应用软件兼容性
【问题现象】:
通过域策略和用户配置文件,设定IE的兼容性视图后,新发放虚拟机兼容性视图设置没有效果
兼容性视图设置界面:工具->兼容性视图设置
域策略配置界面:
【告警信息】:无
【问题分析】:
通过process monitor抓取IE兼容性视图设置更改的注册表项,通过脚本导入到当前登录用户的配置文件中。
【解决方法】:
1. 在IE中,通过工具->兼容性视图设置,配置兼容性视图列表。
2. 执行如下命令,保存IE中设置后的二进制数据。蓝色文本以实际值替换,注意删除换行符
reg query "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\BrowserEmulation\ClearableListData" /v UserFilter
UserFilterREG_BINARY411F00005308ADBA020000005600000001000000020000000C0000008F6F0F2CA53AD0010100000009006C006F00630061006C0068006F00730074000C0000000F4F9DF68DCDD001010000000A006800750061007700650069002E0063006F006D00
3. 在模板中配置用户初次登录执行脚本,使用户登录时生效。
下面是批处理脚本内容,保存在C盘根目录下IECompat.bat
@echo off
reg add "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\BrowserEmulation\ClearableListData" /v UserFilter /t REG_BINARY /f /d411F00005308ADBA020000005600000001000000020000000C0000008F6F0F2CA53AD0010100000009006C006F00630061006C0068006F00730074000C0000000F4F9DF68DCDD001010000000A006800750061007700650069002E0063006F006D00
把以下保存为IECompat.vbs,然后放在C:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
路径下
'该本默认仅执行一次
Dim oShell
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.run "C:\IECompat.bat",0
Set oShell = Nothing
'Delete the script
DeleteSelf
Sub DeleteSelf()
Dim objFSO
'Create a File System Object
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Delete the currently executing script
objFSO.DeleteFile WScript.ScriptFullName
Set objFSO = Nothing
End Sub
【总结&建议】:
该配置方法可单独作为批处理或vbs脚本双击执行使用。
要做到域内客户端设置的批量修改,主要有两种方式:组策略和脚本。组策略是Windows中的一套系统更改和配置管理工具的集合,使用了更完善的管理组织方法,几乎可以对各种对象中的设置进行管理和配置。但是对于本文中提到的更改IE兼容性视图网站列表,在组策略中是无法实现的。
而Windows系统的注册表,相信很多人都知道,它的功能十分强大,是一个存储着几乎所有的系统和应用设置信息的数据库。组策略做不到的很多事,注册表都可以去做,而且注册表的修改可以利用脚本实现,这样便可以通过域来实现客户端的统一修改。
要求:在域中,实现批量修改下图中兼容性视图列表中的Microsoft.com为canway.net
针对此问题,由于组策略中没有相关设置选项,故采用脚本的方式去实现。
首先找到此设置在注册表中的对应注册表项HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\BrowserEmulation\ClearableListData\UserFilter,发现此键值是用16进制的数据写入的,所以,要修改该值,首先要知道canway.net的十六进制的值。
如果要计算该值,会比较麻烦,要知道各字符的十六进制对应的值。现在提供一个比较简单的做法,首先在某一台客户端IE上将canway.net加入兼容性视图,删除原有的Microsoft.com,然后进到注册表编辑器,将该注册表项导出,随便命名即可,
用记事本打开,即可看到指定的键值
然后写一个脚本,将指定键值改为上图所示的值。
脚本如下(文件格式为.vbs):
最后放到域中,作为开机或关机脚本分发即可。脚本执行后的效果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)