finally i found something everthing comes online for free !
Mar 13

I have been struggling to find an easy way of implmenting Addin feature in my application. We happened to create a IPlugin interface and discovered it in a predetermined folder. Then it was consumed in an Appdomain hosted place. Later, when we are done, we just scrap the whole app domain. We  had issues here and there and it worked on such a way that it will have the addin stored in memory to be useable.

Now Microsoft is coming up with these AddIn namespace and pipelining concept. Please take a look at the following URL. http://msdn.microsoft.com/msdnmag/issues/07/02/CLRInsideOut/default.aspx

There are 3 ways to use addin for your application.

In the first category, the add-in provides a service to the host application. For example, a mail server might host add-ins for virus scanning, spam filtering, or IP protection; a word processor might have need for a spell-check add-in; and a Web browser might host add-ins for handling certain file types. Our Calculator example illustrates this scenario. If you look at the add-in code found in SampleCalculatorAddIn.cs, you will see that the add-in is providing the service implementation of Add, Subtract, Multiply, and Divide to the host.

In the second category, the host offers its behavior to the add-in and lets the add-in define how it automates the host. In this scenario, the host is really providing a service to the add-in. Most Microsoft® Office add-ins fall under this category: upon initialization of the add-in, the Office application will pass its root object to the add-in, allowing it to automate the host.

Using this model, a host can let third parties extend it in ways the application never considered. We’ve seen Microsoft Excel® add-ins that automatically replace text symbols with real-time stock quotes, and Microsoft Word add-ins that add virtual links to phone numbers in documents that start up a Voice over IP (VoIP) program and call a phone number. Sometimes you see entire applications built as one large add-in to an existing application. There are several CRM (customer relationship management) applications whose entire client front-end is contained inside Microsoft Outlook®.

The final category represents add-ins that use the host mainly for screen real-estate rather than any host-specific functionality. Search tool bars are an example of this: the same toolbar may add itself to your browser, the windows taskbar, and your e-mail client while providing the same functionality regardless of its host. 


Leave a Reply