windows安全升級導致IE中無法加載MSCOMM控件的解決辦法

最近單位的內網機子集中升級了一次 windows 安全補丁,結果發現以前工作正常的一個 Web 應用出問題了,它本來是調用 MSCOMM 控件對串口進行操作的,結果發現操作沒有反應。開始以爲是串口或外設有問題,結果用超級 終端測試又正常。應該是 IE 出問題了。經過與沒有打補丁的機器對比測試,發現打了補丁的就有問題,沒打的就正常。看 來是打補丁讓 IE 出問題了。看了一下 IE 的管理加載項,裏面本來應該有 MSCOMM 控件的,現在也沒有顯示了。於是上網查找,發現有人解決了,辦法是先安裝 IE7 ,再刪除 IE7 ,重啓後讓 windows 恢復原來的 IE ,但這樣工作量太大了,沒有采用。還是在補丁上找線索。補丁太多,一個個刪除測試不太可 能,先看看補丁的說明信息,看到一個 ActiveX KillBit 安全補丁 KB973346 ,唉,這個應該有戲。刪除它,再測試,程序正常。看來找到點上了。

    可是刪除這個補丁時提示對其他幾個補丁有影響,能不能不刪除它而解決問題呢?再想想辦法 。上 MS 的網站,查這個補丁的相關信息,終於找到了註冊表關鍵位置

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{648A5600-2C6E-101B-82B6-000000000014}]

Compatibility Flags = 0x400 

這是補丁程序對有漏洞的 ActiveX 控件設置的標誌,讓 IE 不加載它。刪除這個鍵,再看 IE 的管理加載項,裏面出現了 MSCOMM 控件的名字 Microsoft Communication Control ,進一步測試程序,控件加載正常。看來這纔是解決問題的最好辦法。於是寫了一個刪除註冊 表鍵的 reg 文件: 

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{648A5600-2C6E-101B-82B6-000000000014}]

 

雙擊這個 reg 文件,提示導入註冊表成功後,相應鍵值被成功刪除,問題搞定。

 

想着網上還有好多朋友爲這個問題頭痛,於是 寫下來供大家分享!

轉自http://blog.csdn.net/dave_c/archive/2009/09/16/4558939.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章