Microsoft.VisualStudio.Tools.Applications.Contract Namespace
The Microsoft.VisualStudio.Tools.Applications.Contract 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.
Classes
Class | Description | |
---|---|---|
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. |
Structures
Structure | Description | |
---|---|---|
EntryPointInfo | Infrastructure. Defines a structure that contains information about entry points. |
Interfaces
Interface | Description | |
---|---|---|
IAppInfoContract | Infrastructure. | |
IAppInfoDocumentContract | Infrastructure. | |
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. |