Visual Studio Tools for Office
Visual Studio Tools for Office (VSTO) is a set of development tools available in the form of a Visual Studio add-in (project templates) and a runtime that allows Microsoft Office 2003 and later versions of Office applications to host the .NET Framework Common Language Runtime (CLR) to expose their functionality via the .NET type system. As a result, it allows extensions to the Office applications to be written in .NET languages (extensions to Office previously were DLLs or COM add-ins written using Visual Basic, C++ or VBA) 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 if required
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 .NET 2003 and Visual Studio 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 2005. Later on, the Visual Studio Tools for Office 2005 Second Edition (VSTO 2005 SE) was released as a free add-in to Visual Studio Professional and above that includes Office 2007 and 2003 support. 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 or Team System editions. [2] [3] With Visual Studio 2008, VSTO 3.0 is no longer available separately but is integrated with full functionality into Professional and Team System IDEs.
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 itself, programs written with 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]
VSTO compatibility and add-in functionality
VSTO 2003, 2005 and 3.0 runtimes install in side-by-side (SxS) mode. VSTO 2005 SE runtime replaces the earlier VSTO 2005 runtime. All older VSTO solutions will continue to run in newer versions of Office as long as the runtime against which they were developed is installed. VSTO solutions developed against newer Office versions will not work in older Office versions as they lack the necessary Primary Interop Assemblies (PIAs) [7] Design-time support is as follows:
VSTO/VSTO runtime version | Develop/Build against Office 2003 | Develop/Build against Office 2007 | Available as | ||
---|---|---|---|---|---|
Document-level | Application-level | Document-level | Application-level | ||
VSTO 2003 | Word, Excel | — | — | — | Available only as Visual Studio .NET 2003 VSTO SKU |
VSTO 2005 | Word, Excel | Outlook | — | — | Available as Visual Studio 2005 VSTO SKU and part of Visual Studio 2005 Team System editions |
VSTO 2005 SE | Requires VSTO 2005 for document-level customizations | Word, Excel, Outlook, PowerPoint, Visio | InfoPath | Word, Excel, Outlook, PowerPoint, Visio, InfoPath | Downloadable for Visual Studio 2005 Professional and above, however document-level customizations require original VSTO 2005 (Standalone SKU or Team System editions) |
VSTO 3.0 | Word, Excel (Builds against the VSTO 2005/2005 SE runtime) | Word, Excel, Outlook, PowerPoint, Visio, Project (Builds against the VSTO 2005 SE runtime) | Word, Excel, InfoPath | Word, Excel, Outlook, PowerPoint, Visio, InfoPath, Project, SharePoint 2007 Workflows | Built into Visual Studio 2008 Professional and above |
Code developed with various editions of VSTO will only work with certain releases and editions of Microsoft Office 2003 and related products. Specifically, VSTO solutions developed in editions prior to VSTO 2005 SE will not work with any edition of Office 2003 other than Professional. VSTO solutions developed with VSTO 2005 SE will work with Office 2003 Standard and Professional. VSTO 2005 SE solutions will work with all editions of Office 2007.
See also
References
- ↑ Visual Studio Tools for Office
- ↑ Visual Studio 2005 Tools for the 2007 Office System (VSTO 2005 SE) Released to the Web
- ↑ VSTO features available by product combination
- ↑ More on Word and Excel as CLR hosts
- ↑ Another CLR hosts are shipped from Microsoft
- ↑ VSTO Security Model
- ↑ VSTO Loader and Runtime Components
External links
If you like SEOmastering Site, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...