Project Description
Application Tools for Visual Studio (AppTools) enables managed .NET application extensibility via Visual Studio (as a reimplementation of VSTA 2012).
Application Tools for Visual Studio (AppTools) is a library for providing managed .NET application extensibility via Visual Studio (and possibly SharpDevelop in future). AppTools will initially be a reimplementation of the Visual Studio Tools for Application (VSTA) 2012 libraries from Microsoft. AppTools will provide a Visual Studio add-in with extension project types, and an application library to provide the integration services.

Since AppTools is based on the Microsoft VSTA libraries, it helps to provide some background of VSTA.

VSTA supports application extension using managed languages (C# and VB.NET), similar to the role of VBA and the VBA IDE in the Office applications. Previous versions of VSTA provided a custom IDE similar to Visual Studio and were restrictively licensed. VSTA 2012 is a refactoring of VSTA, now without the custom IDE but a free extension to the commercial versions of Visual Studio 2012 (Pro and above, so excluding the free Express versions). VSTA 2012 also provides a modified runtime model that can be distributed free of charge. The downloads for VSTA 2012 can be found here:
VSTA 2012 has a number of limitations:
  • Runtime is x86 only,
  • F# projects are not supported, and
  • Debugging for projects hosted in a native process is not supported.

Since VSTA 2012 is implemented as a mixture of native and managed code, and is not open source, it is very hard to work around these limitations. It's not clear on what basis Microsoft supports VSTA, and what the prospects of further development or addressing these limitations are. It might also be desirable to implement the VSTA functionality in the free SharpDevelop IDE, providing a standard route to managed .NET application extensibility.

The initial goal for the AppTools project is thus to provide a compatible, open-source, managed reimplementation of the VSTA 2012 functionality (runtime library and VS add-in), and then to address the three specific limitations noted above.

Project Status
I am currently experimenting with VSTA 2012, and have not started with the AppTools reimplementation. One challenge will be the Visual Studio customization and project extensions. The VSTA 2012 documentation is very sparse, so putting together some rough list of requirements and work items would be a good start...

If you have any interest in the project, or might be able to contribute in any way, please contact me at govert@icon.co.za.

Govert van Drimmelen

Last edited Jan 30, 2014 at 4:41 PM by govert, version 3