我使用helloworld樣本創建BHO。 Building Browser Helper Objects with Visual Studio 2005C++ BHO(IE插件)問題
BHO沒有被加載,並且我無法在SetSite函數中達到斷點。
請讓我知道需要額外的設置來註冊BHO並隨後進行調試。
我正在使用IE9,VS2008。
非常感謝你
我使用helloworld樣本創建BHO。 Building Browser Helper Objects with Visual Studio 2005C++ BHO(IE插件)問題
BHO沒有被加載,並且我無法在SetSite函數中達到斷點。
請讓我知道需要額外的設置來註冊BHO並隨後進行調試。
我正在使用IE9,VS2008。
非常感謝你
這是因爲調試器沒有附加到正確的IE9進程。要解決此問題,您需要指定IE9爲所有選項卡使用單個進程。這可以通過設置註冊表值來完成:HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ Main \ TabProcGrowth = 0
希望這會有所幫助。
你確定你已經註冊了嗎?假設已經準確地在以上(特別是關於使用在.RGS文件的正確CLSID部分)的鏈接來實現的例子中,從提升/管理CMD窗口嘗試:
regsrv32 /s mybho.dll
這將註冊COM在DLL中的對象,以及與Internet Explorer註冊爲一個BHO
此外,隨着IE9你需要確保它在附加組件管理器中開啓(工具/管理加載項)
你運行在保護模式下?如果是,那麼SetSite中的斷點永遠不會被打中。 請參閱http://msdn.microsoft.com/en-us/library/bb250462.aspx以瞭解有關保護模式的更多信息。
您是否還嘗試使用regasm註冊BHO?
我有同樣的問題。我使用的是64位IE9,但我將調試器改爲使用32位,現在它適用於我。
在VS 2008進入菜單:
項目 - >項目名稱屬性 - >配置屬性 - >調試 - >命令
C:\ Program Files文件(x86)的\的Internet Explorer \ IEXPLORE.EXE
我是用64位前:
C:\ Program Files文件\的Internet Explorer \ IEXPLORE.EXE
還可以使用本地文件,以避免與保護模式問題:
命令參數:
路徑當地一些HTML文件
好運...
這是很常見的問題。此外,你應該看看工具>管理加載項,並確保你的BHO列在那裏。 – EricLaw 2011-07-19 00:55:39
我已經使用regsrv32註冊了它。我也在插件管理器中啓用它。即使在那之後,斷點也沒有被擊中。 – Tilak 2011-06-03 02:37:58