64位BHO不加载内IE 9 64 [英] 64bit BHO not loading inside IE 9 64
问题描述
我已经创建了32位和64位版本的我的BHO(C ++ code)。 32位版本的加载罚款在IE 9的32位,而不是64位版本的IE 9 64在Windows 7上。
I've created a 32-bit and 64-bit version of my BHO (C++ code). The 32-bit version loads fine in IE 9 32-bit, but not the 64-bit version in IE 9 64 on WIndows 7.
我有双重检查的是:
- 64位的DLL确实(在DLL
DUMPBIN /头
)的64位code - 注册表项
HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微软\的Windows \ CurrentVersion \ Explorer的\浏览器辅助对象
和HKEY_CLASSES_ROOT \ Wow6432Node \ CLSID
正确 - 在我的IE浏览器的64位可以加载第三方扩展(2 BHO实际装载)
- the 64-bit DLL is indeed 64-bit code (
dumpbin /headers
on the DLL) - Registry entries
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects
andHKEY_CLASSES_ROOT\Wow6432Node\CLSID
are correct - my IE 64-bit can load 3rd party extension (2 BHO are actually loaded)
我不知道该怎么办,在这一点上调试问题。
I don't know what to do at this point to debug the issue.
注:我所知道的<一href="http://stackoverflow.com/questions/2491030/browser-helper-object-doesnot-get-loaded-in-ie8">Browser帮助对象不列入获取IE8 以及约64位BHO等相关问题的加载,但他们的问题和解决方案是不同的。
Note: I'm aware of Browser Helper Object doesnot get loaded in IE8 and other related questions about 64-bit BHO, but their problem and solutions are different
推荐答案
问题是我如何注册一个BHO 64位的误解。通过调用32位或64位版本REGSVR32的,该DLL将被注册为一个32位(Wow6432Node)或64位。我不担心我的DLL中使用的注册表,才CAL的权利REGSVR32。
The problem was my misunderstanding of how to register a BHO for 64-bit. By calling the 32-bit or 64-bit version of regsvr32, the DLL will be registered as a 32-bit (Wow6432Node) or 64-bit. I don't have to worry about which registry to use inside my DLL, only to cal the right regsvr32.
这篇关于64位BHO不加载内IE 9 64的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!