Problem writing Browser Helper Object
-
I am trying to write a Browser Helper Object, but I am having a problem making it recognisable as a BHO. Following the instructions in Dino Esposito's MSDN article, using VC++6 I generate a standard ATL Com AppWizard project, selecting .DLL as the server type. I then insert an ATL Object, selecting an Internet Explorer Object, leaving all the defaults (appartment threading, dual interface, aggregation, no errorInfo, Connection Points or Free Threaded Marshaller). I then simply add the extra registration into the .RGS file to put the CLSID into HKLM|software|microsoft|windows|Current Version|explorer|Browser Helper Objects. I do not add any extra code, but just build the project. It registers OK, and the CLSID appears in the registry as expected. However, when I run BHODemon (www.definitivesolutions.com), it does not see the new helper, nor, as far as I can tell, does Internet Explorer. I have compared my software with working BHOs such as IEhelper and Dino Esposito's HTMLEdit, but can find nothing to explain my difficulty. Can anyone help? Dave
-
I am trying to write a Browser Helper Object, but I am having a problem making it recognisable as a BHO. Following the instructions in Dino Esposito's MSDN article, using VC++6 I generate a standard ATL Com AppWizard project, selecting .DLL as the server type. I then insert an ATL Object, selecting an Internet Explorer Object, leaving all the defaults (appartment threading, dual interface, aggregation, no errorInfo, Connection Points or Free Threaded Marshaller). I then simply add the extra registration into the .RGS file to put the CLSID into HKLM|software|microsoft|windows|Current Version|explorer|Browser Helper Objects. I do not add any extra code, but just build the project. It registers OK, and the CLSID appears in the registry as expected. However, when I run BHODemon (www.definitivesolutions.com), it does not see the new helper, nor, as far as I can tell, does Internet Explorer. I have compared my software with working BHOs such as IEhelper and Dino Esposito's HTMLEdit, but can find nothing to explain my difficulty. Can anyone help? Dave
Did you implement
IObjectWithSite
, and put that interface in your COM_MAP so the object responds to QI calls forIObjectWithSite
? --Mike-- Personal stuff:: Ericahist | Homepage Shareware stuff:: 1ClickPicGrabber | RightClick-Encrypt CP stuff:: CP SearchBar v2.0.2 | C++ Forum FAQ "Linux is good. It can do no wrong. It is open source so must be right. It has penguins. I want to eat your brain." -- Paul Watson, Linux Zombie -
I am trying to write a Browser Helper Object, but I am having a problem making it recognisable as a BHO. Following the instructions in Dino Esposito's MSDN article, using VC++6 I generate a standard ATL Com AppWizard project, selecting .DLL as the server type. I then insert an ATL Object, selecting an Internet Explorer Object, leaving all the defaults (appartment threading, dual interface, aggregation, no errorInfo, Connection Points or Free Threaded Marshaller). I then simply add the extra registration into the .RGS file to put the CLSID into HKLM|software|microsoft|windows|Current Version|explorer|Browser Helper Objects. I do not add any extra code, but just build the project. It registers OK, and the CLSID appears in the registry as expected. However, when I run BHODemon (www.definitivesolutions.com), it does not see the new helper, nor, as far as I can tell, does Internet Explorer. I have compared my software with working BHOs such as IEhelper and Dino Esposito's HTMLEdit, but can find nothing to explain my difficulty. Can anyone help? Dave
-
You know that in the RGS file there are 2 CLSID's right? Did you select the correct one?
Well spotted. An excellent bit of remote diagnosis. That's exactly what I didn't do. I selected the wrong one. Thanks. Dave