Visual Studio Tools for Office

From Wikipedia, the free encyclopedia

Visual Studio Tools for Office (VSTO) is a set of development tools available in the form of a Visual Studio add-in and a runtime that allows Microsoft Office 2003 and 2007 applications to host the .NET Framework Common Language Runtime (CLR) expose their functionality via the .NET type system. As a result, it allows extensions to the Office applications to be written in .NET languages (a task which was previously accomplished with VBA macros) as well as to use functionality and user interface constructs from Office applications in .NET applications.[1] VSTO supersedes developer versions of Office 2000 and Office XP for office development. The runtime, although part of VSTO, is also downloadable separately.

The VSTO add-ins (project types and controls) allow VSTO applications and Office add-ins to be developed using the Visual Studio IDE. For Visual Studio 2003 and 2005, it was available only as a standalone edition with support for .NET languages limited to Visual Basic.NET and C#. It was also included as a part of the Visual Studio Team System. Later on, the Visual Studio Tools for Office 2005 Second Edition (VSTO 2005 SE) was made available that includes Office 2007 support for all Visual Studio Team System editions and also integrates the VSTO functionality into the Visual Studio Professional IDE. However, for Visual Studio Professional Edition, it installs only the application-level add-ins; it does not add the document-level customizations or other functionality (actions pane, host controls, visual document designer, etc) available in the full version of VSTO. [2] [3] With Visual Studio 2008, it is no longer available separately but is integrated into Professional and Team Edition IDEs.

Contents

[edit] Comparison with VBA

Like VBA, code written for VSTO is executed by a separate virtual machine (the CLR) which is hosted inside the Microsoft Office applications. However, unlike VBA, where the code is stored in the document file themselves, programs written for VSTO are stored in separate .NET assemblies which are associated with the documents by means of custom properties.[4] If the properties are present, Microsoft Office hosts the CLR and loads the assembly specified in the property into a separate Appdomain named after the document's name.[5] VSTO applications are subject to the .NET Framework Code Access Security constraints, in addition to the digital signature based permission model that governs VBA macros.[6]

[edit] See also

[edit] References

[edit] External links

Languages