由於累積安全性更新 896688 (MS05-052) 中引用的防禦全面性變更,包含自訂 ActiveX 控制項的網頁可能無法在 Internet Explorer 中如預期般載入

文章翻譯 文章翻譯
文章編號: 909738 - 檢視此文章適用的產品。
重要本文所包含的資訊將告訴您,如何補救較低安全性的設定,或關閉電腦上安全性功能。您可以進行這些變更,為特定的問題尋求替代解決方案。在進行這些變更之前,建議您先評估在特定環境中使用此替代解決方案的相關風險。如果您決定使用此替代解決方案,請採用任何其他的適當步驟,以協助保護您的系統。
重要 本文包含有關修改登錄的相關資訊。修改登錄之前,請務必將它備份起來,並瞭解如何在發生問題時還原登錄。如需有關如何備份、還原和修改登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
256986 Microsoft Windows 登錄說明
全部展開 | 全部摺疊

在此頁中

徵狀

安裝累積安全性更新 896688 (MS05-052) 之後,包含自訂 Microsoft ActiveX 控制項的網頁無法在列於<適用於>一節內的產品中如預期般載入。

當包含 ActiveX 控制項的網頁位於「網際網域」區域中時會發生這個問題。如果網頁位於內部網路區域中,或者是一個「信任的網站」,則 ActiveX 控制項就會如預期般載入。

發生的原因

在 Microsoft Component Object Model (COM) 物件可在 Microsoft Internet Explorer 中執行之前,安全性更新 MS05-052 會引用額外的檢查。這項變更的用意是防止不是設計在 Internet Explorer 中產生的 COM 物件在 Internet Explorer 中產生。在 COM 物件可在 Internet Explorer 中執行之前,MS05-052 引用的其中一個檢查是 Internet Explorer 現在對「網際網域」區域中 ActiveX 控制項之 IObjectSafety 介面的檢查。

解決方案

如果要解決這個問題,請重新編繹 ActiveX 控制項。接著,當控制項在網際網路瀏覽器的內容中執行時,將控制項標記為可在指令碼中安全使用,以及可在初始化作業中安全使用。

如需有關 Internet Explorer 如何判斷 ActiveX 控制項為可在指令碼中安全使用,以及可在初始化作業中安全使用的詳細資訊,請按一下下列的文件編號,檢視「Microsoft 知識庫」中的文件:
216434 How Internet Explorer determines if ActiveX controls are safe
如需有關如何將 MFC ActiveX 控制項標記為可在指令碼中安全使用,以及可在初始化作業中安全使用的詳細資訊,請按一下下列的文件編號,檢視「Microsoft 知識庫」中的文件:
161873 How to mark MFC ActiveX controls as Safe for Scripting and Initialization

其他可行方案

警告 這個替代解決方案可能會使您的電腦或網路更容易遭受惡意使用者或惡意軟體 (例如病毒) 的攻擊。雖然不建議使用這個替代解決方案,但我們仍提供這項資訊,讓您可以自行選擇是否採用這個方案。請自行承擔使用此替代解決方案的風險。

警告 不當編輯 Metabase 可能會導致嚴重的問題,甚至需要重新安裝使用 Metabase 的產品。Microsoft 並不保證可以解決您不當編輯 Metabase 所導致的問題。請自行承擔編輯 Metabase 的一切風險。

注意 請務必在編輯 Metabase 前先將其備份。

警告 如果您使用 [登錄編輯程式] 或其他方法不當修改登錄,可能會發生嚴重問題。這些問題可能需要您重新安裝作業系統才能解決。Microsoft 不保證可以解決這些問題。請自行承擔修改登錄的一切風險。

如果要解決這個問題,請使用下列其中一種方法:

在登錄中設定可在指令碼中安全使用,以及可在初始化作業中安全使用的值

如果無法重新編譯 ActiveX 控制項,但是控制項開發人員將 ActiveX 控制項歸類為可在指令碼中安全使用,以及可在初始化作業中安全使用,則您可使用下列其中一種登錄值來將 ActiveX 控制項標記為可在指令碼中安全使用,以及可在初始化作業中安全使用:
  • {7DD95801-9882-11CF-9FA9-00AA006C42C4}
  • {7DD95802-9882-11CF-9FA9-00AA006C42C4}
例如,如果 ActiveX 控制項的 CLSID 為 {A697E83F-3B53-11D1-8AE4-006097ED2008},您可加入下列其中一種登錄值來將 ActiveX 控制項標記為可在指令碼中安全使用,以及可在初始化作業中安全使用:
  • HKEY_CLASSES_ROOT\CLSID\{A697E83F-3B53-11D1-8AE4-006097ED2008}\Implemented Categories\{7DD95801-9882-11CF-9FA9-00AA006C42C4}
  • HKEY_CLASSES_ROOT\CLSID\{A697E83F-3B53-11D1-8AE4-006097ED2008}\Implemented Categories\{7DD95802-9882-11CF-9FA9-00AA006C42C4}

將網頁移至不同區域

如果網頁受信任,您可將網頁移至更信任的區域。如需有關如何將網頁加入安全性區域的詳細資訊,請造訪下列 Microsoft 網站:
http://www.microsoft.com/windows/ie_intl/tw/using/howto/security/settings.mspx

在登錄中設定 ActiveX 相容值

您可在登錄中設定 ActiveX 相容性旗標。如果要執行這項操作,請依照下列步驟執行:
  1. 按一下 [開始],再按 [執行],輸入 Regedit.exe,然後按一下 [確定]
  2. 找出下列登錄子機碼:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility
  3. 用滑鼠右鍵按一下 [ActiveX Compatibility],指向 [新增],再按一下 [機碼],輸入 ActiveX 控制項的 CLSID,然後按下 ENTER。
  4. 用滑鼠右鍵按一下在步驟 3 中建立的機碼,指向 [新增],再按一下 [DWORD 值]
  5. 輸入 Compatibility Flags,再按下 ENTER。
  6. 用滑鼠右鍵按一下 [Compatibility Flags] ,然後按一下 [修改]
  7. [數值資料] 方塊中,輸入 00800000,然後按一下 [確定]
  8. 結束 [登錄編輯程式]。

?考

如需有關累積安全性更新 MS05-052 的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
896688 MS05-002:Internet Explorer 的累積安全性更新
如需有關 IObjectSafety 介面的詳細資訊,請造訪下列 Microsoft Developer Network (MSDN) 網站:
http://msdn.microsoft.com/library/default.asp?url=/workshop/components/com/reference/ifaces/iobjectsafety/iobjectsafety.asp

屬性

文章編號: 909738 - 上次校閱: 2005年11月11日 - 版次: 2.3
這篇文章中的資訊適用於:
  • Microsoft Internet Explorer 6.0 SP1?應用於:
    • Microsoft Windows XP Service Pack 1
    • Microsoft Windows 2000 Server SP4
    • Microsoft Windows 2000 Professional SP4
    • Microsoft Windows 2000 Datacenter Server
    • Microsoft Windows 2000 Advanced Server SP4
    • Microsoft Windows Millennium Edition
    • Microsoft Windows 98 Second Edition
  • Microsoft Internet Explorer 6.0?應用於:
    • Microsoft Windows Server 2003 Service Pack 1
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows XP Service Pack 2
    • Microsoft Windows XP Professional x64 Edition
  • Microsoft Internet Explorer 5.5?應用於:
    • Microsoft Windows Millennium Edition
  • Microsoft Internet Explorer 5.01 SP4?應用於:
    • Microsoft Windows 2000 Server SP4
    • Microsoft Windows 2000 Professional SP4
    • Microsoft Windows 2000 Datacenter Server
    • Microsoft Windows 2000 Advanced Server SP4
關鍵字:?
kbactivexscript kbinetdev kbtshoot kbprb KB909738
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com