Share via


Visual Studio Interop Assemblies

The Visual Basic 2008 interop assemblies allow managed applications to access the COM interfaces that provide Visual Basic 2008 extensibility.

Each interface in the interop assembly corresponds to a Visual Basic 2008 COM interface. Each is designed so that the parameter information passed by the managed code approximates the information required by the underlying COM object as closely as possible. Each method returns an HRESULT to the managed application.

The Visual Studio interop assemblies are not the same as the Managed Package Framework Classes. The MPF classes use the interop assemblies to provide a higher level of abstraction, a richer feature set, and more robust interoperability and error handling than the interop assemblies.

List of Interop Assemblies

The interop assemblies are installed by default at <Visual Studio SDK Installation Path>\VisualStudioIntegration\Common\Assemblies and are also installed into the global assembly cache (GAC). The following interop assemblies are provided in Visual Studio SDK:

Interop assembly name

Functionality

Microsoft.VisualStudio.Debugger.Interop.dll

Provides access to the debugging functionality in the integrated development environment (IDE).

Microsoft.VisualStudio.OLE.Interop.dll

Provides access to some standard OLE interfaces.

Microsoft.VisualStudio.Shell.Interop.dll

Provides access to basic IDE interfaces.

Microsoft.VisualStudio.Shell.Interop.8.0.dll

Provides access to IDE interfaces, types, and services that are new to Visual Basic 2008.

Microsoft.VisualStudio.Shell.Interop.9.0.dll

Provides access to IDE interfaces, types, and services that are new to Visual Studio 2008.

Microsoft.VisualStudio.TextManager.Interop.dll

Provides access to core editor interfaces.

Microsoft.VisualStudio.TextManager.Interop.8.0.dll

Provides access to core editor interfaces, types, and services that are new to Visual Basic 2008.

Together, these assemblies provide the following namespaces:

Namespace

Contents

Microsoft.VisualStudio.Shell.Interop

Microsoft.VisualStudio.VSHelp

VSLangProj

IDE and OLE interfaces used in Visual Studio SDK.

Microsoft.VisualStudio.TextManager

Core editor interfaces widely used by the IDE.

Microsoft.VisualStudio.Debugger

Interfaces supporting the debugging environment.

Microsoft.VisualStudio.Ole.Interop

Interfaces supporting the OLE types.

In addition, developers may find it valuable to use members of the VSConstants class to obtain definitions of common constants, such as S_OK.

Note

Some classes, such as the VsMethodTipWindowClass class, are COM classes that are registered only with the local registry. You cannot create an instance of these classes with the new keyword. Instead, you must get the ILocalRegistry object and create the object with the CreateInstance method. MPF wraps this method with CreateInstance.

See Also

Other Resources

Interoperating with Unmanaged Code

Managed VSPackages