IE 9 64 中未加载 64 位 BHO [英] 64bit BHO not loading inside IE 9 64

查看:33
本文介绍了IE 9 64 中未加载 64 位 BHO的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

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 确实是 64 位代码(DLL 上的 dumpbin/headers)
  • 注册表项 HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionExplorerBrowser Helper ObjectsHKEY_CLASSES_ROOTWow6432NodeCLSID 是正确的
  • 我的 64 位 IE 可以加载第 3 方扩展(实际加载了 2 个 BHO)

此时我不知道该怎么做来调试问题.

I don't know what to do at this point to debug the issue.

注意:我知道 浏览器助手对象未加载在 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

推荐答案

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

这篇关于IE 9 64 中未加载 64 位 BHO的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆