Comment : ajouter des références aux espaces de noms Automation

Dans Visual Studio 2013, les compléments sont déconseillés. Nous vous recommandons de mettre vos compléments à niveau aux extensions VSPackage. Pour plus d'informations sur la mise à niveau, consultez FAQ : conversion de compléments en extensions VSPackage.

Lorsque vous ajoutez une référence à EnvDTE, EnvDTE80, EnvDTE90 ou EnvDTE100, vous pouvez utiliser un assembly .NET ou une version de bibliothèque COM. Ce choix dépend de votre projet.

Si vous gérez une application ou un complément plus ancien, vous pouvez être amené à utiliser la version COM de EnvDTE, EnvDTE80, EnvDTE90 ou EnvDTE100. Si vous créez une application managée ou un complément, vous souhaiterez probablement utiliser la version de l'assembly .NET.

Lorsque vous utilisez l'Assistant Complément pour créer un complément quel que soit le langage de programmation utilisé ou lorsque vous créez une macro, le processus ajoute des références aux assemblys EnvDTE, EnvDTE90, Env90 et Env100. Dans le fichier qui contient la classe Connect, il ajoute également des directives using (en Visual Basic, imports) aux espaces de noms EnvDTE et EnvDTE80.

Pour accéder aux objets Automation en dehors des macros et des compléments créés avec l'Assistant Complément, vous devez toutefois ajouter manuellement les références d'assembly et les directives using (en Visual Basic, imports). Lorsque vous ajoutez manuellement une référence d'assembly, vous devez également affecter false à la propriété Incorporer les types interop de l'assembly. Pour cela, procédez comme suit :

  1. Ajoutez la référence d'assembly. Dans l'Explorateur de solutions, ouvrez le menu contextuel du projet, choisissez Ajouter, Références, puis choisissez le bouton Ajouter une référence. Sous l'onglet .NET, sélectionnez l'assembly, puis cliquez sur le bouton OK. Dans un projet C#, le nom de l'assembly figure sous le nœud Références dans l'Explorateur de solutions. Dans un projet Visual Basic, le nom de l'assembly figure dans les propriétés du projet. Cliquez avec le bouton droit sur le projet dans l'Explorateur de solutions, puis sélectionnez Propriétés. Les pages de propriétés s'affichent. Sélectionnez la page Références dans le volet gauche.

  2. Sélectionnez la référence d'assembly. Dans la fenêtre Propriétés, affectez false à la propriété Incorporer les types interop de l'assembly.

Une fois que vous ajouterez des références aux espaces de noms, vous souhaiterez très probablement programmer en fonction des objets DTE et DTE2. Pour plus d'informations, consultez Comment : obtenir des références aux objets DTE et DTE2.

Notes

Il est possible que pour certains des éléments de l'interface utilisateur de Visual Studio, votre ordinateur affiche des noms ou des emplacements différents de ceux indiqués dans les instructions suivantes.Ces éléments dépendent de l'édition de Visual Studio dont vous disposez et des paramètres que vous utilisez.Pour plus d'informations, consultez Paramètres Visual Studio.

Pour ajouter manuellement des références aux espaces de noms EnvDTE en Visual Basic ou Visual C#

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel du projet, choisissez Ajouter, Références, puis choisissez le bouton Ajouter une référence.

  2. Dans la boîte de dialogue Ajouter une référence, sous l'onglet associé au type de composant de votre choix, par exemple, .NET ou COM, sélectionnez EnvDTE, EnvDTE80, EnvDTE90 et EnvDTE100.

  3. Choisissez le bouton OK pour ajouter deux nouvelles références au projet.

  4. Pour activer la fonction Intellisense pour les nouveaux assemblys dans l'éditeur de code, en haut du module ou de la classe de votre projet, ajoutez un des éléments suivants :

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

Pour ajouter manuellement des références aux espaces de noms EnvDTE en Visual C++ managé

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel du projet, choisissez Ajouter, Références, puis choisissez le bouton Ajouter une référence.

  2. Sous l'onglet .NET, sélectionnez EnvDTE, EnvDTE80 et EnvDTE90, puis cliquez sur le bouton Ajouter.

  3. Choisissez OK pour ajouter les nouvelles références au projet.

  4. Pour activer IntelliSense pour les nouveaux assemblys dans l'éditeur de code, en haut de votre fichier projet principal, ajoutez les éléments suivants :

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

Pour ajouter des références aux espaces de noms EnvDTE et EnvDTE80 à un code Visual C++ non managé (ATL)

  • Dans un fichier d'en-tête ou un fichier source approprié, ajoutez les informations suivantes :

    #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 )
    

Voir aussi

Tâches

Comment : contrôler des compléments avec le Gestionnaire de compléments

Procédure pas à pas : création d'un Assistant

Concepts

Inscription d'un complément

Graphique Modèle d'objet Automation

Autres ressources

Création de compléments et d'Assistants