0

I'm writing an Internet Explorer addon, and currently I need to have two separate components, one of which shows up as a "Browser Extension" and the other as a "Browser Helper Object" in the Manage Add-ons screen of Internet Explorer.

It's not clear to me why I need both of these, or what the difference is.

Brandon
  • 16,382
  • 12
  • 55
  • 88

1 Answers1

3

Brower extensions appear in the IE interface; think toolbar buttons, panels in the window frame, and so on. To add a command to the right-click shortcut menu, you would create a browser extension.

Browser helper objects (BHOs) extended IE services. (Flash and Silverlight were implemented as BHOs.) If you want create a capability for IE, you'd create a BHO.

Um, you know that IE's no longer in active development, right? It's been replaced by Microsoft Edge. There may be little value in creating an add-on using IE's proprietary interfaces and services.

As of Win 10 Anniversary update, Edge supports extensions created for other browsers. It's also much easier to create extensions for Edge.

It might be easier, in the long run, to shift to Edge or another browser (if you can't/won't run Win10).

Lance Leonard
  • 3,285
  • 3
  • 16
  • 15
  • Sadly I'm writing the extension for our enterprise customers, who only just upgraded to Windows 7! Thanks for the explanation! – Brandon Dec 03 '16 at 23:00
  • BHO's implement iSetSite and are best written with C++ as .net uses and interop interface, that in practice slows down the browser considerably. Usually a BHO has no chrome UI, but it is sometimes deployed as a helper for a toolbar or menu extension. eg.. Adobes' PDF reader used to have a satellite BHO called the PDF link helper... Extensions include COM Toolbars and Explorer Bars (implement iSetSite also), Command bar buttons, Context Menu Extensions and IE menu extensions for the Tools and Help menus and can be written in C++, javascript, vbscript or they can launch exe or dll files (PE's). – Rob Parsons Dec 05 '16 at 05:27
  • JS menu and context menu extensions are easiest to write and deploy. see https://github.com/iecustomizer/ . There are also HTA (hypertext applications) which are like exe's except they are written with html and scripting. They can be deployed as menu extensions or Command Bar buttons. see https://msdn.microsoft.com/en-us/library/ms536496(v=vs.85).aspx – Rob Parsons Dec 05 '16 at 05:28