Freigeben über


Elemente eines Projekt-Modells

Die Schnittstellen und den Implementierungen aller Projekte in Visual Studio geben eine grundlegende Struktur frei: das Projektmodell für den Projekttyp. Klicken Sie im Projektmodell VSPackage ist, das Sie entwickeln, erstellen Sie die Objekte, die den betreffenden Entscheidungen Entwurf zusammen mit der Arbeit und globale Funktionen entsprechen, die in der IDE bereitgestellt wird. Obwohl Sie steuern, wie ein Projektelement gespeichert werden, z. B. Gehen Sie nicht Steuerelementbenachrichtigung, dass eine Datei beibehalten werden muss. Wenn ein Benutzer den Fokus in einem geöffneten Projektelement gespeichert und Speichern auf dem Datei Menü auf der Menüleiste Visual Studio Projekttyp auswählen, muss der Code den Befehl über die IDE abfangen, besteht die Datei weiter und sendet eine Benachrichtigung an die IDE, dass die Datei nicht mehr geändert wird.

VSPackage interagiert mit der IDE über Dienste, die den Zugriff auf IDE-Schnittstellen ermöglichen. Zum Beispiel von bestimmten Diensten, und überwachen Sie Befehle ausführen und stellen weitere Kontextinformationen für die Auswahl bereit, die im Projekt erstellt wird. Die gesamte globale IDE-Funktionalität, die für ein VSPackage benötigt wird, wird von den Diensten bereitgestellt. Weitere Informationen zu Diensten finden Sie unter Gewusst wie: Nehmen Sie einen Dienst in Anspruch.

Andere Überlegungen zur Implementierung:

  • Ein einzelnes Projektmodell kann mehr als einen Projekttyp enthalten.

  • Projekttypen und den begleitenden Projekt factorys werden unabhängig mit GUIDs registriert.

  • Jedes Projekt muss eine Vorlagendatei oder einen Assistenten verwenden, um die neue Projektdatei zu initialisieren, wenn ein Benutzer ein neues Projekt vom Visual Studio Benutzeroberfläche erstellt. Zum Beispiel initialisieren die Visual C++ Vorlagen, was schließlich .vcproj-Dateien werden.

Die folgende Abbildung zeigt die wichtigsten Schnittstellen, die Dienste und die Objekte an, die eine typische Projektdurchführung zusammensetzt. Sie können die Anwendung können, HierUtil7 verwenden, um die zugrunde liegenden Objekte und anderen Programmierung vorformulierten Satz zu erstellen. Weitere Informationen über die Verwendung der Hilfe HierUtil7 finden Sie unter Implementation of Project Interfaces.

Projektmodell

Grafik zum Visual Studio-Projektmodell

Weitere Informationen zu den Schnittstellen und Dienste, die im vorherigen Diagramm aufgeführt sind, und anderen optionalen Schnittstellen, die nicht im Diagramm eingeschlossen werden, finden Sie unter Projekt-vorbildliche Kernkomponenten.

Projekte können Befehle unterstützen und daher müssen die IOleCommandTarget-Schnittstelle implementieren, um am Befehls routing durch den Befehl Elementkontext GUID teilzunehmen.

Siehe auch

Aufgaben

Gewusst wie: Nehmen Sie einen Dienst in Anspruch

Konzepte

Prüfliste: Erstellen neuer Projekttypen

Projekt-vorbildliche Kernkomponenten

Projekt-Instanzen mithilfe von Projekt-Factorys erstellen

Weitere Ressourcen

Implementation of Project Interfaces

Erstellen von Projekttypen