Tuesday, March 24, 2009

Spice up your IE with spicIE – Writing IE7/8 Plugins in managed code in minutes (beta)

FrankFi's view of the world - Software made in Germany – SpicIE


some time ago I asked some guys here at Microsoft why we do not support writing IE plug ins in managed code. The answer was that while this still is a good idea it is not the highest priority of the product teams. Honestly I understand that because the main focus for the team is to make consumers happy.

So we started our own little project here and called it SpicIE. Now Gunnar finished it off so far that we are able to present it to the public and we are able to make available. It has a reasonable (very) good code quality while it is not finished.

But certainly it is worth being checked out. You can find it here http://code.msdn.microsoft.com/SpicIE/


MSDN Code Gallery - SpicIE - Simple Plug-In Creator for Internet Explorer


SpicIE is a framework which allows you easily to extend Internet Explorer 7/8 with your own plugins. SpicIE wraps/hides the IE COM extension interfaces and makes it easy to develop browser extensions in managed programming languages.

SpicIE is designed for simplicity. The initial creation of an Internet Explorer plugin with SpicIE takes only minutes until you have a runnable, debuggable code base which you can extend with your own functionality. There are lot of scenarios where browser plugins could be useful. SpicIE lets you develop your own browser functionality comfortable with minimal technical efforts.

With SpicIE you can develop your own:

  • IE browsing event handlers
  • IE toolbar buttons
  • IE menu entries
  • IE context menu entries
  • IE explorer bars
  • IE toolbars.

SpicIE is designed for managed plugin development. You can develop SpicIE plugins in any managed development language. You will have Visual Studio 2008 project templates for C# and VB.NET plugins.

SpicIE is tested with Internet Explorer 7/8. You can develop SpicIE plugins with all Visual Studio 2008 versions. SpicIE plugins can be executed by .NET 2.0, .NET 3.0, .NET 3.5.

SpicIE is published unter MICROSOFT PUBLIC LICENSE (Ms-PL).” [Project Description Leached in Full]

From the Overview Presentation on the download page;



Slide16Slide18    Slide17 Slide19


ZOMG, this is the bee’s knee’s… I’m going to have to write some managed IE extensions this weekend… ;)


Scott Parker said...

GREAT find Greg! This is huge for my group, very exciting stuff.

Just one more reason your blog is a can't miss as far as I'm concerned.


Praveen said...

Thanks Greg. As always you have the best info for MS related products from a developers point of view.

Anonymous said...

I thought the reason this wasn't supported is because any given process can only host one version of the CLR? so what happens if one add-in is written using CLR 2.0 and another using 1.1? This seems to be one of the things MS is addressing in .NET 4

Greg said...

Yeah I hear you... Same thing with building Managed Windows Explorer plug-ins.

The one that that kind of gave me some hope was the Host mechanism. That the managed component isn't hosted in IE, but instead hosted in the spicIE.Host. I'm thinking that this would allow for some flexibility and hopefully handling of the CLR version issue (But I've yet had a chance to confirm this)