Microsoft VSTA Brings Macros to .NET
During this month's Professional Developers Conference, Microsoft unveiled Visual Studio Tools for Applications, a new ISV-facing technology that will enable software vendors to build .NET macros into their application. IDN takes a look at how VSTA might change how .NET apps, web services get built and deployed - for end users and ISVs.
During this month's Professional Developers Conference, Microsoft unveiled Visual Studio Tools for Applications, a new ISV-facing technology that will enable software vendors to build .NET macros into their application.
"VSTA enables the .NET equivalent to Macros. ISVs can host VSTA within their application. The ISV host application can communicate to the Visual Studio IDE through a set of interfaces provided by VSTA," Shoshanna Budzianowski, group program manager at Microsoft's .NET Developer Product Marketing Group told IDN. "Using these interfaces, ISVs create the kind of experience they wish to expose to their users, including macro recording and editing in VB, and C#, exposing their managed object models, providing helper functions and code snippets, and context sensitive help for their object model."
VSTA projects can be opened in Visual Studio 2005, giving professional developers full access to the Visual Studio 2005 environment. At the same time, end users can record macros or develop simple routines. In all these scenarios, the much stronger object model definitions of the Visual Studio world help protect the application from both unintentional activities and on-purpose attacks.
Visual Studio Tools for Applications will be available during the third quarter of 2006. Attendees at PDC were able to participate in developer labs and can receive a DVD with a virtual PC implementation of a Visual Studio Tools for Applications IDE hands-on laboratory. This is a time-restricted version of Visual Studio Tools for Applications in its pre-beta test state.
Inside VSTA: Tool and Architecture
VSTA, the result of more than five years of effort and broad industry feedback, is a significantly enhanced .NET Framework-based application customization technology that takes advantage of 64-bit architecture targeted to ISVs. and systems integrators that can embed VSTA into their packaged applications to enable their customers to create custom experiences on top of those applications at reduced cost and risk.
VSTA consists of several key technologies (a) an IDE used by ISVs to build support into an object model they can expose in their application, (b) a runtime engine, and (c) an end-user IDE that communicates with the object model. Application customization through VSTA is enabled through programming languages such as Visual Basic .NET and Visual C# that take advantage of the inherent .NET security model and the Visual Studio development environment.
Thanks to the .NET Framework's Common Language Runtime (CLR), VSTA looks to be engineered to be easily supported by a variety of off-the-shelf applications, "Individual apps can be grandfathered by integrating VSTA. Doing so exposes .NET programmability to customizations," Budzianowski said. "Because customizations written with VSTA run in the CLR, they run with .NET security. We believe most ISVs who wrap existing COM object models will run with full trust. ISVs who create new, native managed object models can implement partial trust scenarios."
VSTA's ISV and Community Support
ISVs and partners are already at work supporting VSTA Autodesk Inc., has built a prototype version of Visual Studio Tools for Applications into its AutoCAD 2006 product family that integrates Visual Studio Tools for Applications. Further, ABB Ltd., GE Fanuc Automation Americas Inc. are among the first early adopters are integrating VSTA into future product lines in some intriguing ways: