編輯:查看帖子末尾以獲得更多信息。Firebreath插件未在IE 10中加載
我想通過Firebreath框架(1.7.0)來創建插件來加載。我使用Internet Explorer 10以桌面模式運行在Windows 8上。我使用Firebreath附帶的內置測試FBTtestPlugin轉載了此內容。失敗是無聲的,因爲該對象元素是創建的,但沒有任何插件指定的屬性。如何去調試呢? Microsoft Internet Explorer兼容性工具報告該插件無法加載。 (該FBTtestPlugin負荷三個插件,因此三個錯誤)
我有其他(非FB)的插件在同一個環境中工作(如這裏的例子:像所有的例子http://msdn.microsoft.com/en-us/library/dd565667(v=vs.85).aspx工作正常從這個網站http://ie.microsoft.com/testdrive/browser/activexfiltering/Default.html)。
我已經嘗試了巨大的安全設置的組合,但在這裏是最輕鬆的一組我迄今如下:
- 工具/安全/ ActiveX篩選:未選中
- Internet選項/安全/ Internet:未啓用「啓用保護模式」
- Internet選項/安全/ Internet:處於自定義級別。在ActiveX下,除「限制性屬性」(如「允許ActiveX過濾」)外,所有內容都「啓用」。
- 基於這些設置可以看到各種安全警告。
注:我不打算保留這些設置。我只想讓插件工作,然後向後重新啓用安全設置。
UPDATE 我想通了一部分,現在可以運行FB測試FBTestPlugin。爲了使IE的調試更容易,我將註冊表項HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ Main \ TabProcGrowth定義爲0,以限制瀏覽器使用一個進程。不幸的是,在IE10中,程序文件和程序文件(x86)中的iexplore.exe都指向64位版本的IE。這可防止32位插件運行(請參閱http://support.microsoft.com/kb/2716529),並且症狀是無提示失敗。
但是,我的插件仍然無法加載在IE中,上面的重新命名的問題仍然是打開的。問題仍然是無聲的加載失敗。不過,我認爲這可能與插件配置有關。兼容性測試工具中列出的CLSID(如上所示)被列爲全0,而不是有效的GUID。此外,註冊表看起來很時髦:HKCR \ Company.Name的關鍵字存在,就像HKCR \ Company.Name.1一樣,但都是空的(而不像在正常工作的插件中那樣具有CLSID子項)。預期的GUID確實存在,但是以虛假名稱「應用程序」。「。我現在正在深入研究在regsvr32運行時調用的代碼。
謝謝大家!
將其標記爲問題的答案 – taxilian
創建要求修復的請求(2):https://github.com/firebreath/FireBreath/pull/114 – mrts
修復程序已合併到https://github.com/firebreath/FireBreath/commit/10eda67f1e986584feadde2606881d0f340c4cd1中 - 謝謝,taxilian! – mrts