Share via


Visual Studio Shell

Die Visual Studio-Shell ist der primäre Agent der Integration in Visual Studio. Die Shell bietet erforderliche Funktionen, um VSPackages für gemeinsame Dienste freizugeben. Da das Architekturziel von Visual Studio darin besteht, die primäre Funktionalität in den VSPackages zu übertragen, ist die Shell ein Framework, um grundlegende Funktionen bereitzustellen und die kommunikationsübergreifende Kommunikation zwischen den Komponenten VSPackages zu unterstützen.

Shell-Verantwortlichkeiten

Die Shell hat die folgenden hauptverantwortlichen Aufgaben:

  • Unterstützen (über COM-Schnittstellen) grundlegende Elemente der Benutzeroberfläche. Dazu gehören Standardmenüs und Symbolleisten, Dokumentfensterframes oder MDI-untergeordnete Fenster (Multi-Document Interface) sowie Toolfensterframes und Andockunterstützung.

  • Verwalten einer laufenden Liste aller derzeit geöffneten Dokumente in einer ausgeführten Dokumenttabelle (RDT), um die Persistenz von Dokumenten zu koordinieren und sicherzustellen, dass ein Dokument nicht auf mehrere Arten oder auf inkompatible Weise geöffnet werden kann.

  • Unterstützung der Befehlsrouting- und Befehlsbehandlungsschnittstelle, IOleCommandTarget.

  • Laden von VSPackages zu geeigneten Zeiten. Das Verzögerte Laden eines VSPackage-Pakets ist erforderlich, um die Leistung der Shell zu verbessern.

  • Verwalten bestimmter gemeinsamer Dienste, z SVsShell. B. , die grundlegende Shellfunktionen SVsUIShellund , die grundlegende Fensterfunktionen bereitstellen.

  • Verwalten der Lösungsdateien (SLN). Lösungen enthalten Gruppen verwandter Projekte, ähnlich wie Arbeitsbereichsdateien (DSW) in Visual C++ 6.0.

  • Nachverfolgen von shellweiten Auswahl, Kontext und Währung. Die Shell verfolgt die folgenden Typen von Elementen nach:

    • Das aktuelle Projekt

    • Das aktuelle Projektelement oder die Aktuelle Element-ID IVsHierarchy

    • Die aktuelle Auswahl für das Eigenschaftenfenster oder SelectionContainer

    • Die UI-Kontext-IDs oder CmdUIGuids, die die Sichtbarkeit von Befehlen, Menüs und Symbolleisten steuern

    • Die derzeit aktiven Elemente wie das aktive Fenster, das Dokument und den Rückgängig-Manager

    • Die Attribute des Benutzerkontexts, die dynamische Hilfe unterstützen

    Die Shell vermittelt auch die Kommunikation zwischen installierten VSPackages und aktuellen Diensten. Sie unterstützt die Kernfeatures der Shell und stellt sie allen in Visual Studio integrierten VSPackages zur Verfügung. Zu diesen Kernfunktionen gehören die folgenden Elemente:

  • Informationen zu Dialogfeld und Begrüßungsbildschirm

  • Dialogfelder "Neues hinzufügen" und "Vorhandenes Element hinzufügen"

  • Fenster "Klassenansicht" und "Objektkatalog"

  • Dialogfeld "Verweise "

  • Dokumentgliederungsfenster

  • Dynamisches Hilfefenster

  • Suchen und Ersetzen

  • Dialogfelder "Projekt öffnen" und "Datei öffnen" im Menü "Neu "

  • Dialogfeld "Optionen " im Menü "Extras "

  • Eigenschaftenfenster

  • Projektmappen-Explorer

  • Aufgabenliste (Fenster)

  • Werkzeugkasten