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.
| 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. |
| Structure | Description | |
|---|---|---|
|
EntryPointInfo | Infrastructure. Defines a structure that contains information about entry points. |
| 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. |