AddIn Interface

Represents an add-in listed in the Add-In Manager dialog box and provides information about an add-in to other add-in objects.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

'Declaration
<GuidAttribute("53A87FA1-CE93-48BF-958B-C6DA793C5028")> _
Public Interface AddIn
[GuidAttribute("53A87FA1-CE93-48BF-958B-C6DA793C5028")]
public interface AddIn
[GuidAttribute(L"53A87FA1-CE93-48BF-958B-C6DA793C5028")]
public interface class AddIn
[<GuidAttribute("53A87FA1-CE93-48BF-958B-C6DA793C5028")>]
type AddIn =  interface end
public interface AddIn

The AddIn type exposes the following members.

Properties

  Name Description
Public property Collection Returns the collection containing the AddIn object that supports this property.
Public property Connected Gets or sets a value indicating whether an add-in is loaded and connected.
Public property Description Gets or sets a string that represents the description for the AddIn object.
Public property DTE Gets the top-level extensibility object.
Public property Guid Gets the GUID for the AddIn object.
Public property Name Gets the name of the AddIn object.
Public property Object Sets or gets the object supporting the specified AddIn object.
Public property ProgID Gets the ProgID based on the add-in's registry entry.
Public property SatelliteDllPath Gets the location of a DLL containing localized resources, if available.

Top

Methods

  Name Description
Public method Remove Removes the add-in from the collection of add-ins and makes it unavailable.

Top

Remarks

An AddIn object provides information about an add-in to other add-ins. Only registered add-ins are represented by an AddIn object.

Examples

Sub AddInExample()
   ' For this example to work correctly, there should be an add-in 
   ' available in the Visual Studio environment.
   ' Set object references.
   Dim addincoll As AddIns
   Dim addinobj As AddIn
   
   ' Register an add-in, check DTE Add-in count before and after the 
   ' Update.
   addincoll = DTE.AddIns
   MsgBox("AddIns collection parent name: " & addincoll.Parent.Name)
   MsgBox("Number of Add-ins: " & addincoll.Count)
   ' NOTE: Use regsvr32 for Visual C++, regasm for Visual Basic 
   ' and Visual C#. Also, the pathname used below is an example only.
   Shell("regasm F:\AddIns\RegExplore\Debug\regexplore.dll")
   addincoll.Update()
   MsgBox("Number of Add-ins: " & addincoll.Count)
   addinobj = addincoll.Item(1)

   ' Connect the add-in if it is not already connected
   ' and list its SatelliteDLLPath and Guid.
   If addinobj.Connected = False Then
      addinobj.Connected = True
   End If
   MsgBox("Satellite DLL Path: " & addinobj.SatelliteDllPath)
   MsgBox("DLL GUID: " & addinobj.Guid)

   ' Activates a solution add-in so that it is available, then 
...' deactivates it.
   addinobj = DTE.Solution.AddIns.Add(addinobj.ProgID, addinobj.Description, addinobj.Name, False)
   DTE.Solution.AddIns.Item(1).Remove()
End Sub 

See Also

Reference

EnvDTE Namespace