Freigeben über


Gewusst wie: Hinzufügen von Verweisen auf Automatisierungsnamespaces

Add-Ins sind seit Visual Studio 2013 veraltet. Es wird empfohlen, für Ihre Add-Ins ein Upgrade auf VSPackage-Erweiterungen durchführen. Weitere Informationen zum Durchführen eines Upgrades finden Sie unter FAQ: Konvertieren von Add-Ins in VSPackage-Erweiterungen.

Wenn Sie einen Verweis auf EnvDTE, EnvDTE80, EnvDTE90 oder EnvDTE100 hinzufügen, können Sie wahlweise eine .NET-Assemblyversion oder eine COM-Bibliotheksversion verwenden. Wofür Sie sich entscheiden sollten, hängt von dem jeweiligen Projekt ab.

Wenn Sie eine ältere Automatisierungsanwendung oder ein entsprechendes Add-In beibehalten möchten, müssen Sie u. U. die COM-Version von EnvDTE, EnvDTE80, EnvDTE90 oder EnvDTE100 verwenden. Erstellen Sie hingegen eine neue verwaltete Anwendung oder ein entsprechendes Add-In, empfiehlt es sich, die .NET-Assemblyversion zu verwenden.

Wenn Sie mit dem Add-In-Assistenten ein Add-In in einer beliebigen Programmiersprache oder ein Makro erstellen, werden Verweise auf die Assemblys EnvDTE, EnvDTE90, Env90 und Env100 vom Prozess hinzugefügt. In der Datei mit der Connect-Klasse werden dem EnvDTE- und dem EnvDTE80-Namespace darüber hinaus using-Direktiven(imports-Direktiven in Visual Basic) hinzugefügt.

Um jedoch außerhalb von Makros oder mit dem Add-In-Assistenten erstellten Add-Ins auf die Automatisierungsobjekte zuzugreifen, müssen Sie die Assemblyverweise und using-Direktiven (imports-Direktive in Visual Basic) jedoch manuell hinzufügen. Wenn Sie einen Assemblyverweis manuell hinzufügen, müssen Sie auch die Assemblyeigenschaft Interoptypen einbetten auf false festlegen. Führen Sie dazu folgende Schritte aus:

  1. Fügen Sie den Assemblyverweis hinzu. Öffnen Sie im Projektmappen-Explorer im Kontextmenü des Projekts Hinzufügen, Verweise, und wählen Sie dann die Schaltfläche Neuen Verweis hinzufügen aus. Wählen Sie auf der .NET-Registerkarte die Assembly aus, und wählen Sie dann die Schaltfläche OK aus. In einem C#-Projekt wird der Name der Assembly im Projektmappen-Explorer unter dem Knoten Verweise angezeigt. In einem Visual Basic-Projekt wird der Name der Assembly in den Projekteigenschaften angezeigt. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Eigenschaften aus. Die Eigenschaftenseiten werden angezeigt. Wählen Sie im linken Bereich die Seite Verweise aus.

  2. Wählen Sie den Assemblyverweis aus, und legen Sie im Eigenschaftenfenster die Assemblyeigenschaft Interoptypen einbetten auf false fest.

Nachdem Sie Verweise auf die Namespaces erstellt haben, werden Sie wahrscheinlich zur Programmierung das DTE-Objekt und das DTE2-Objekt verwenden. Weitere Informationen finden Sie unter Gewusst wie: Abrufen von Verweisen auf das DTE-Objekt und das DTE2-Objekt.

Hinweis

Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio angezeigt als die in den folgenden Anweisungen aufgeführten.Die Elemente werden durch die verwendete Ausgabe von Visual Studio und die gewählten Einstellungen bestimmt.Weitere Informationen finden Sie unter Anpassen der Entwicklungseinstellungen in Visual Studio.

So fügen Sie in Visual Basic oder Visual C# manuell Verweise auf die EnvDTE-Namespaces hinzu

  1. Öffnen Sie im Projektmappen-Explorer im Kontextmenü des Projekts Hinzufügen, Verweise, und wählen Sie dann die Schaltfläche Neuen Verweis hinzufügen aus.

  2. Wählen Sie im Dialogfeld Verweis hinzufügen auf der Registerkarte für die Art der gewünschten Komponente (z. B. .NET oder COM) EnvDTE, EnvDTE80, EnvDTE90 und EnvDTE100 aus.

  3. Wählen Sie die Schaltfläche OK aus, um die beiden neuen Verweise dem Projekt hinzuzufügen.

  4. Fügen Sie im Code-Editor am Anfang des Projektmoduls oder der Klasse einen der folgenden Einträge hinzu, um Intellisense für die neuen Assemblys zu aktivieren:

    Imports EnvDTE
    Imports EnvDTE80
    Imports EnvDTE90
    Imports EnvDTE100
    
    using EnvDTE;
    using EnvDTE80;
    using EnvDTE90;
    using EnvDTE100;
    

So fügen Sie in verwaltetem Visual C++ manuell Verweise auf die EnvDTE-Namespaces hinzu

  1. Öffnen Sie im Projektmappen-Explorer im Kontextmenü des Projekts Hinzufügen, Verweise, und wählen Sie dann die Schaltfläche Neuen Verweis hinzufügen aus.

  2. Wählen Sie auf der Registerkarte .NET die Optionen EnvDTE, EnvDTE80 und EnvDTE90 und dann die Schaltfläche Hinzufügen aus.

  3. Wählen Sie OK aus, um dem Projekt die neuen Verweise hinzuzufügen.

  4. Fügen Sie im Code-Editor am Anfang der Hauptprojektdatei Folgendes hinzu, um IntelliSense für die neuen Assemblys zu aktivieren:

    // Visual C++
    #using <envdte.dll>
    #using <envdte80.dll>
    #using <envdte90.dll>
    #using <envdte100.dll>
    

So fügen Sie nicht verwaltetem Visual C++ (ATL) Verweise auf den EnvDTE-Namespace und den EnvDTE80-Namespace hinzu

  • Fügen Sie in einer geeigneten Header- oder Quelldatei den folgenden Code ein:

    #pragma warning( disable : 4278 )
    #pragma warning( disable : 4146 )
    //The following #import imports EnvDTE based on its LIBID.
    #import "libid:80cc9f66-e7d8-4ddd-85b6-d9e6cd0e93e2" version("8.0") 
    lcid("0") raw_interfaces_only named_guids
    //The following #import imports EnvDTE80 based on its LIBID.
    #import "libid:1A31287A-4D7D-413e-8E32-3B374931BD89" version("8.0") 
    lcid("0") raw_interfaces_only named_guids
    //The following #import imports EnvDTE90 based on its LIBID.
    #import "libid: 2ce2370e-d744-4936-a090-3fffe667b0e1" version("9.0") 
    lcid("0") raw_interfaces_only named_guids
    //The following #import imports EnvDTE100 based on its LIBID.
    #import "libid: 26ad1324-4b7c-44bc-84f8-b86aed45729f" version("10.0") 
    lcid("0") raw_interfaces_only named_guids
    #pragma warning( default : 4146 )
    #pragma warning( default : 4278 )
    

Siehe auch

Aufgaben

Gewusst wie: Steuern von Add-Ins mit dem Add-In-Manager

Exemplarische Vorgehensweise: Erstellen eines Assistenten

Konzepte

Add-In-Registrierung

Diagramm "Automationsobjektmodell"

Weitere Ressourcen

Erstellen von Add-Ins und Assistenten