Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein VSPackage muss sich bei Visual Studio registrieren, damit die integrierte Entwicklungsumgebung (Integrated Development Environment, IDE) ihre Befehle ordnungsgemäß leitet.
Die Registrierungsdatenbank kann entweder durch manuelle Bearbeitung oder mithilfe einer Registrar-Datei (.RGS) aktualisiert werden. Weitere Informationen finden Sie unter Erstellen von Registrarskripten.
Das Managed Package Framework (MPF) stellt diese Funktionalität über die ProvideMenuResourceAttribute Klasse bereit.
- Befehlstabellenformat-Referenzressourcen befinden sich in nicht verwalteten Satelliten-UI-DLLs.
Registrierung des Befehlsbehandlers eines VSPackage
Ein VSPackage, das als Handler für benutzeroberflächenbasierte Befehle (UI) fungiert, erfordert einen Registrierungseintrag, der nach dem VSPackage benannt ist GUID. Dieser Registrierungseintrag gibt den Speicherort der UI-Ressourcendatei von VSPackage und die Menüressource in dieser Datei an. Der Registrierungseintrag selbst befindet sich unter HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>\Menus, wobei <Version> die Version von Visual Studio ist, z. B. 9.0.
Hinweis
Der Stammpfad HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<Version> kann mit einem alternativen Stamm überschrieben werden, wenn die Visual Studio-Shell initialisiert wird. Weitere Informationen zum Stammpfad finden Sie unter Installieren von VSPackages With Windows Installer.
Der CTMENU-Ressourcenregistrierungseintrag
Die Struktur des Registrierungseintrags lautet:
HKEY_LOCAL_MACHINE\Software\VisualStudio\<Version>\
Menus\
<GUID> = <Resource Information>
<
GUID> ist der GUID des VSPackage in der Form {XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX}.
<Ressourceninformationen> bestehen aus drei durch Kommas getrennten Elementen. Diese Elemente sind in der reihenfolge:
< Pfad zur Ressourcen-DLL>, <Menü Ressourcen-ID>, <Menüversion>
In der folgenden Tabelle werden die Felder der <Ressourceninformationen> beschrieben.
| Element | Description |
|---|---|
| < Pfad zur Ressourcen-DLL> | Dies ist der vollständige Pfad zu der Ressourcen-DLL, die die Menüressource enthält, oder dies ist leer, was angibt, dass die VSPackage-Ressourcen-DLL verwendet werden soll (wie im Unterschlüssel "Packages", in dem die VSPackage selbst registriert ist). Es ist üblich, dieses Feld leer zu lassen. |
| < Menü Ressourcen-ID> | Dies ist die Ressourcen-ID der CTMENU Ressource, die alle UI-Elemente für das VSPackage enthält, wie aus einer VSCT-Datei kompiliert. |
| < Menüversion> | Dies ist eine Zahl, die als Version für die CTMENU Ressource verwendet wird. Visual Studio verwendet diesen Wert, um zu ermitteln, ob es den Inhalt der CTMENU-Ressource mit seinem Cache aller CTMENU-Ressourcen erneut zusammenführen muss. Eine Remerge wird durch Ausführen des Devenv-Setupbefehls ausgelöst.Dieser Wert sollte zunächst auf 1 festgelegt und nach jeder Änderung der CTMENU Ressource und vor dem Auftreten des Remerges auf 1 erhöht werden. |
Example
Hier ist ein Beispiel für ein paar Ressourceneinträge:
HKEY_LOCAL_MACHINE\Software\VisualStudio\9.0Exp\
Menus\
{019971D6-4685-11D2-B48A-0000F87572EB} = ,1, 10
{1b027a40-8f43-11d0-8d11-00a0c91bc942} = , 10211, 3