首页 电脑 电脑学堂 查看内容

IE的Killbit 技术详解

2009-2-22 11:24 640 0

摘要: Killbit 是IE用来禁止ActiveX 运行的技术, 其表现上是一个注册表设置,在 HKEY_LOCAL_MACHINESOFTWAREMicrosoftInternet Explo...
关键词: nbsp COMPAT ActiveX ABCD Compatability ABCDEF 一个 Explorer Internet 进制

Killbit 是IE用来禁止ActiveX 运行的技术, 其表现上是一个注册表设置,在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\<CLSID> Compatability=值 这个Compatability是一个REG_DWORD类型的bitmask,每一个bit 都有一定的含义,具体请见下表(或者MSDN参考文档)      COMPAT_AGGREGATE = 0x00000001,     COMPAT_NO_OBJECTSAFETY = 0x00000002,     COMPAT_NO_PROPNOTIFYSINK = 0x00000004,     COMPAT_SEND_SHOW = 0x00000008,     COMPAT_SEND_HIDE = 0x00000010,     COMPAT_ALWAYS_INPLACEACTIVATE = 0x00000020,     COMPAT_NO_SETEXTENT = 0x00000040,     COMPAT_NO_UIACTIVATE = 0x00000080,     COMPAT_NO_QUICKACTIVATE = 0x00000100,     COMPAT_NO_BINDF_OFFLINEOPERATION = 0x00000200,    COMPAT_EVIL_DONT_LOAD = 0x00000400,     COMPAT_PROGSINK_UNTIL_ACTIVATED = 0x00000800,     COMPAT_USE_PROPBAG_AND_STREAM = 0x00001000,     COMPAT_DISABLEWINDOWLESS = 0x00002000,     COMPAT_SETWINDOWRGN = 0x00004000,     COMPAT_PRINTPLUGINSITE = 0x00008000,     COMPAT_INPLACEACTIVATEEVENWHENINVISIBLE = 0x00010000,     COMPAT_NEVERFOCUSSABLE = 0x00020000,     COMPAT_ALWAYSDEFERSETWINDOWRGN = 0x00040000,     COMPAT_INPLACEACTIVATESYNCHRONOUSLY = 0x00080000,     COMPAT_NEEDSZEROBASEDDRAWRECT = 0x00100000,     COMPAT_HWNDPRIVATE = 0x00200000,     COMPAT_SECURITYCHECKONREDIRECT = 0x00400000,     COMPAT_SAFEFOR_LOADING = 0x00800000 当0x400 那bit被设置的时候,该ActiveX 就会被IE彻底屏蔽。 我们把这个bit 称之为kill bit, 于是就有了killbit 这个技术名称 :) 例子:比如你想屏蔽一个GUID为{ABCDEF12-ABCD-ABCD-ABCD-ABCDEF123456} 的activex 控件,可以设置注册表: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{ABCDEF12-ABCD-ABCD-ABCD-ABCDEF123456} Compatability=400   (以上400是16进制,10进制就设成1024) 更多的信息,请参考微软的KB文章: 《How to stop an ActiveX control from running in Internet Explorer》
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部