64 位 BHO 未在 IE 9 64 内加载

2024-02-28

我创建了 BHO(C++ 代码)的 32 位和 64 位版本。 32 位版本可以在 IE 9 32 位中正常加载,但 64 位版本可以在 WIndows 7 上的 IE 9 64 中加载。

我已经仔细检查过:

  • 64 位 DLL 确实是 64 位代码(dumpbin /headers在 DLL 上)
  • 注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects and HKEY_CLASSES_ROOT\Wow6432Node\CLSID是正确的
  • 我的 IE 64 位可以加载第 3 方扩展(实际加载了 2 个 BHO)

我现在不知道该怎么做来调试这个问题。

注意:我知道IE8 中未加载浏览器帮助程序对象 https://stackoverflow.com/questions/2491030/browser-helper-object-doesnot-get-loaded-in-ie8以及其他有关64位BHO的相关问题,但他们的问题和解决方案是不同的


问题是我对如何注册 64 位 BHO 的误解。通过调用 regsvr32 的 32 位或 64 位版本,DLL 将被注册为 32 位(Wow6432Node)或 64 位。我不必担心在 DLL 中使用哪个注册表,只需调用正确的 regsvr32。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

64 位 BHO 未在 IE 9 64 内加载 的相关文章

随机推荐