Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between a COM Add in and a VSTO Add in

Tags:

com

vsto

I am trying to develop an addin for outlook, and I found a provider http://www.add-in-express.com. But, they have 2 offerings in one(http://www.add-in-express.com/add-in-net/index.php) they allow to create COM add in Using VS 2010 and .Net Framework 4.0 (How is that possible, I always thought COM can only be create in VB6, else You have to create a COM callable Wrapper (CCW)).

The other offering is VSTO Tools (http://www.add-in-express.com/add-in-vsto/index.php), Which is also using .Net Framework 4.0 and this is totally confusing.

Please help me understand.

Regards Mohit Thakral

like image 896
Mohit Avatar asked Jan 25 '12 23:01

Mohit


People also ask

What is a VSTO add-in?

You can use VSTO Add-ins to automate Microsoft Office applications, extend features of the application, and customize the user interface (UI) of the application.

What is outlook VSTO?

Visual Studio provides project templates you can use to create VSTO Add-ins for Microsoft Office Outlook. You can use VSTO Add-ins to automate Outlook, extend Outlook features, or customize the Outlook user interface (UI).

Where are VSTO add-ins installed?

The required VSTO Add-in registry entries are located under the following registry keys where Root is HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE depending if the installation is for the current user or all users.

Does VSTO work with Office 365?

There are two ways to have a Microsoft Office 365 integration: through the COM/VSTO add-in or an Office Add-in.


1 Answers

VSTO uses COM wrappers (RCW) to communicate with Office via a managed API. Unfortunately - the only known way to communicate directly with Office products is by using COM components because that is the technology Office is built upon. Even when using VSTO, you still have to be aware of the COM-objects lifetime - they don't encapsulate it for you (you still have to call Marshal.ReleaseCOMOjbect).

A great resource for learning about VSTO in-depth is VSTO 2007 book by Addison-Wesley. If you go the VSTO route - you should also pickup the VSTO Extension Library (VSTO_PTExtLibs.exe) which eases the pain of COM parameter limitations using extension methods.

I have not personally found a need to use AddIn-Express, but you may find it helps you if you don't want to invest the time in learning the VSTO framework. This choice also depends on the complexity of the solution and the time and resources you have available.

like image 144
SliverNinja - MSFT Avatar answered Nov 14 '22 03:11

SliverNinja - MSFT