简体   繁体   English

BHO在64位计算机上不显示消息框

[英]BHO does not display messagebox in 64bit machine

I have implemented BHO in 32bit machine. 我已经在32位计算机上实现了BHO。 It is working fine in my machine. 我的机器运行正常。 and I have found 2 observations. 我发现了2个观察结果。

  1. BHO Setup run on 64 bit machine which has .net framework - worked perfectly. BHO安装程序在具有.net框架的64位计算机上运行-完美运行。 displays messagebox on OnBeforeNavigate2 event. OnBeforeNavigate2事件上显示消息框。

  2. BHO Setup on 64 machine w/o .net framework. 没有.net框架的64台计算机上的BHO安装程序。 installed .net framework manually and run setup. 手动安装.net框架并运行安装程序。 It is installing perfectly. 它安装完美。 when I open IE, it gives me a popup to enable BHO. 当我打开IE时,会弹出一个窗口以启用BHO。 but, it does not show messagebox. 但是,它不显示消息框。 :( :(

I would like to know where there is a problem in framework related issue, why messagebox is not working? 我想知道与框架相关的问题在哪里,为什么消息框不起作用? or I have to include any assembly manually. 否则我必须手动添加任何程序集。 If yes, I would like to know which assembly is missing in that case. 如果是,我想知道在那种情况下缺少哪个程序集。 I have tried with dependency walker but no clue what is actually missing - no error in it. 我已经尝试过使用依赖沃克,但是不知道实际上缺少什么-它没有错误。

I would like to post an answer on my question. 我想对我的问题发表答案。

After few research and trials of different ways to run BHO in 64bit IE, I have found a solution. 在对以多种方式在64位IE中运行BHO进行研究和试验之后,我找到了解决方案。

To run BHO in 64bit IE, you must need to register BHO with 64bit regsvr32.exe NOT 32bit. 要在64位IE中运行BHO,您必须向64位regsvr32.exe而非32位注册BHO。

bydefault, 32bit regsvr32.exe runs everytime so we go at particular location of regsvr32 and run the command by this way, It will work. 默认情况下,每次都会运行32位regsvr32.exe,因此我们进入regsvr32的特定位置并通过这种方式运行命令,它将起作用。

%systemroot%\System32\regsvr32.exe

this is the easiest way to hit the command (work for both systems 64bit and 32bit). 这是命中命令的最简单方法(适用于64位和32位系统)。

Hope if helps for your problem also. 希望也对您的问题有所帮助。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM