The namespace contains contracts that are defined and implemented by Visual Studio Tools for Applications. The contracts support version-independent communication between host applications and add-ins across AppDomain and process boundaries.
All contracts are interfaces that derive from the IContract interface. Visual Studio Tools for Applications uses contracts to enable communication between the add-in and its host application (this communication channel is called the pipeline). The add-in developer does not interact directly with contracts; however, advanced add-in developers can extend the contracts to define custom pipeline implementation.
For more information about the pipeline, see Understanding the Add-in Pipeline in Visual Studio Tools for Applications.
|VstaConstants||Infrastructure. Provides constants that Visual Studio Tools for Applications uses to represent the host item provider and host type provider service names that the host exposes to the add-in.|
|EntryPointInfo||Infrastructure. Defines a structure that contains information about entry points.|
|ICustomAttributeProviderContract||Infrastructure. Defines methods that get custom attributes of types from the host object model.|
|IEntryPointContract2||Infrastructure. Loads, initializes, and handles the shut down of entry point classes in the add-in assembly.|
|IHostItemProviderContract2||Infrastructure. Defines a method that returns host objects from the host object model.|
|IHostTypeProviderContract||Infrastructure. Defines a method that enables the add-in to obtain types from the host application's object model. Visual Studio Tools for Applications can use these types to invoke static members.|
|IInteropObjectContract2||Infrastructure. Represents an instance of a COM class in the host object model of a COM host application.|
|IInteropStreamContract||Infrastructure. Defines methods for marshaling COM references across the host application and add-in processes.|
|IParameterCustomAttributeProviderContract||Infrastructure. Defines a method that gets custom parameter attributes of types from the host object model.|
|IRemoteTypeContract2||Infrastructure. Extends System.AddIn.Contract.Automation.IRemoteTypeContract by adding a method for determining whether the class that is represented in the current instance of IRemoteTypeContract2 derives from the class that is represented by the specified canonical name.|