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》
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
