Les tableaux suivants s’étendent sur le modèle de projet. Les tableaux présentent de brèves descriptions des interfaces et services identifiés dans le modèle, ainsi que les interfaces et services associés à des objets spécifiques. En outre, les tables détaillent d’autres interfaces facultatives dans la création et la maintenance du projet en fonction des exigences de votre type de projet spécifique.
Gère l’ajout et la suppression d’éléments de projet, ouvre des éditeurs et gère le mappage entre chaque moniker de document et le VSITEMID. Hérite de IVsProject et IVsProject2.
Active l’exécution de commandes similaire à celle des IOleCommandTarget commandes telles que Cut et Rename qui s’appliquent uniquement lorsque le focus se trouve dans Explorateur de solutions.
Sert d’interface cible de commande principale pour une hiérarchie de projet. Il s’agit de l’interface standard pour interroger des objets pour leur état de commande ou leur état et exécuter des commandes. Disponible lorsque vous n’êtes pas concentré dans la fenêtre Projet.
Coordonne la persistance de l’état du projet. En règle générale, l’état du projet est stocké en tant que fichier projet, mais peut être adapté aux systèmes de stockage qui ne sont pas basés sur des fichiers.
Permet au projet de gérer tous les aspects de persistance de ses éléments de projet, en tant que fichiers sur disque ou objets dans d’autres systèmes de stockage. L’interface IVsPersistHierarchyItem2 est utilisée pour les éléments qui n’implémentent pas l’interface IVsPersistDocData2 .
Gère les objets de configuration de projet, tels que les configurations Debug/Release. Les opérations de génération, de déploiement et de débogage sont coordonnées via des objets de configuration de projet.
Implémenté par des hiérarchies pour contrôler les options de suppression (destructrice) ou de suppression (non destructrice) pour les éléments de hiérarchie. Appeler l’interface de requête sur l’interface IVsHierarchyDeleteHandler à partir de l’interface IVsHierarchy .
Fournit l’option d’implémentation d’avoir l’objet qui prend en charge l’interface IVsCfgProvider2 sur une identité COM différente de celle de l’objet projet qui implémente l’interface IVsHierarchy .
Interface facultative implémentée pour rendre votre projet extensible par d’autres développeurs. L’interface IVsProjectStartupServices permet à un VSPackage tiers d’inscrire un GUID que vous conservez dans votre fichier projet afin que chaque fois que votre projet se charge, vous chargez le GUID du service tiers dans votre fichier projet et appelez QueryService ce GUID.
Implémenté par des hiérarchies sources dans une UIHierarchy fenêtre pour coordonner les opérations de Presse-papiers telles que couper, copier et coller. Utilisez l’interface AdviseClipboardHelperEvents pour inscrire les événements du Presse-papiers.
Fournit des informations sur un élément déplacé par rapport à sa source de données pendant une opération de glisser-déplacer dans une fenêtre de hiérarchie d’interface utilisateur. Appelé à partir de l’interface IVsHierarchy .
Fournit des informations sur un élément déplacé par rapport à sa cible de déplacement pendant une opération de glisser-déplacer dans une fenêtre de hiérarchie d’interface utilisateur. Appelé à partir de l’interface IVsHierarchy .
Utilisé par les VSPackages qui implémentent des types de projet pour inscrire que leur fabrique de projet existe auprès de l’IDE. Votre VSPackage doit appeler QueryService ce service et inscrire sa fabrique de projet quand IVsPackage::SetSite la méthode est appelée. Si la SetSite méthode n’est pas appelée, votre projet n’est pas instancié.
Fournit l’accès à la notion interne et intégrée de l’IDE de la solution actuelle, telle que la possibilité d’énumérer des projets, de créer de nouveaux projets, de prendre connaissance des modifications de projet, etc.
Gère les modifications apportées à un fichier ou à un répertoire et avertit les clients lorsque les fichiers sélectionnés ont été modifiés sur le disque.
Fournit des fonctionnalités d’IDE liées à l’interface utilisateur de base, telles que la possibilité de créer et d’énumérer des fenêtres d’outils ou des fenêtres de document ou de signaler une erreur à l’utilisateur.
Utilisé pour implémenter le modèle d’automatisation. Dans votre modèle de projet, vous retournerez un objet de propriétés qui vous permet de créer une instance de cet objet.
Permet d’implémenter des événements de Presse-papiers sur l’objet projet dans la hiérarchie. SVsUIHierWinClipboardHelper vous permet de gérer correctement les opérations couper, copier et coller.