PDC05 - Microsoft Visual Studio Tools for Applications (VSTA)

Microsoft Visual Studio Tools for Applications (VSTA)

Charter

Provide a redistributable Integrated Development Environment (IDE), Design Time (DT), and Run time (RT) for hosts (ISV’s, etc..) providing a rich managed customization environment for developers.

VSTA v1.0 was just announced in the keynote at PDC and the ship date coinsides with the release of Office 12.

Features

• Redistributable VS (Visual Studio) IDE and run time
• Managed customization support (both app- and doc-level)
• Available via the VSIP program.
• Third process debugging.
• MAF (Managed Addin Framework) implementation!
• Building and debugging 32bit and 64bit customizations
• VSTA projects open in VS and vice versa
• Macro recording (via DTE)
• Core infrastructure – project system, build/debug support
• Add-in manager

  • A set of public interfaces for managing Addin’s.

• Partial Trust support
• App Domain management

  • Support for loading customizations (Assemblies) into existing App Domains or into new App Domains.

• Managed Addin Framework support

• SDK

  • Proxy Gen

• A tool similar to tlbimp. Although we produced source files that can be further tweaked Versus the binaries.
• Reflects off of TypeLib’s or managed OM’s and produces Addin friendly managed proxy code that consumes contract implementations.

    • See MAF for more
  • Generic Adapter

• Implements contracts (interfaces) and provides host side AppDomain runtime reflection against the host object model.

  • Samples, Snippet’s
  • Redistributable IDE/RT

• Host project extensibility

• v1 Scenario Example: InfoPath (host) Office12 ships with VSTA integration

• InfoPath user wants to add validation logic to one of the form fields
• InfoPath starts the VSTA IDE and tells it to create a new InfoPath project
• The user writes the validation code and presses F5 to build and start debugging.
• VSTA launches the InfoPath preview process and attaches the debugger to it
• InfoPath discovers the new Addin and tells the VSTA runtime to load it
• When the developer stops debugging, VSTA terminates the InfoPath preview process