Registrieren von Generatoren einzelner Dateien
Damit ein benutzerdefiniertes Tool in Visual Studio verfügbar ist, müssen Sie es registrieren. Dann kann es von Visual Studio instanziiert und einem bestimmten Projekttyp zugeordnet werden.
Die Registrierung für Visual Studio befindet sich in einer privaten Struktur, privateregistry.bin. Öffnen Sie regedit.exe, und folgen Sie diesen Anweisungen, um die private Registrierungsstruktur für die gewünschte Installation von Visual Studio zu laden: Bearbeiten der Registrierung für eine Visual Studio-Instanz.
So registrieren Sie ein benutzerdefiniertes Tool
Registrieren Sie die DLL des benutzerdefinierten Tools entweder in der lokalen Visual Studio-Registrierung oder in der Systemregistrierung unter HKEY_CLASSES_ROOT.
Hier sehen Sie beispielsweise die Registrierungsinformationen für das verwaltete benutzerdefinierte Tool „MSDataSetGenerator“, das im Lieferumfang von Visual Studio enthalten ist:
[HKEY_LOCAL_MACHINE\{hive}\SOFTWARE\Microsoft\VisualStudio\17.0_**_Config\CLSID\{E76D53CC-3D4F-40A2-BD4D-4F3419755476}] @="COM+ class: Microsoft.VSDesigner.CodeGenerator.TypedDataSourceGenerator.DataSourceGeneratorWrapper" "InprocServer32"="C:\\WINDOWS\\system32\\mscoree.dll" "ThreadingModel"="Both" "Class"="Microsoft.VSDesigner.CodeGenerator.TypedDataSourceGenerator.DataSourceGeneratorWrapper" "Assembly"="Microsoft.VSDesigner, Version=17.0.0.0, Culture=Neutral, PublicKeyToken=b03f5f7f11d50a3a"
{hive}
ist der Name, den Sie beim Laden von privateregistry.bin in den Registrierungs-Editor angegeben haben, und der Instanzordner (hier als17.0_**_Config
angegeben) bezieht sich speziell auf eine bestimmte Installation von Visual Studio auf Ihrem Computer.Erstellen Sie einen Registrierungsschlüssel in der gewünschten Visual Studio-Struktur unter Generators\GUID, wobei GUID die vom Projektsystem oder Dienst der jeweiligen Sprache definierte GUID ist. Der Name des Schlüssels wird zum programmatischen Namen Ihres benutzerdefinierten Tools. Der Schlüssel des benutzerdefinierten Tools weist die folgenden Werte auf:
(Standardwert)
Optional. Stellt eine leicht verständliche Beschreibung des benutzerdefinierten Tools bereit. Dieser Parameter ist optional, wird jedoch empfohlen.
CLSID
Erforderlich. Gibt den Bezeichner der Klassenbibliothek der COM-Komponente an, die IVsSingleFileGenerator implementiert.
GeneratesDesignTimeSource
Erforderlich. Gibt an, ob Typen aus Dateien, die von diesem benutzerdefinierten Tool erstellt werden, visuellen Designern zur Verfügung gestellt werden. Der Wert dieses Parameters muss (Null) 0 für Typen sein, die für visuelle Designer nicht verfügbar sind, oder (eins) 1 für Typen, die für visuelle Designer verfügbar sind.
Hinweis
Sie müssen das benutzerdefinierte Tool für jede Sprache gesondert registrieren, für die das benutzerdefinierte Tool verfügbar sein soll.
Beispielsweise registriert sich MSDataSetGenerator einmal für jede Sprache:
[HKEY_LOCAL_MACHINE\{hive}\SOFTWARE\Microsoft\VisualStudio\17.0_**_Config\Generators\{164b10b9-b200-11d0-8c61-00a0c91e29d5}\MSDataSetGenerator] @="Microsoft VB Code Generator for XSD" "CLSID"="{E76D53CC-3D4F-40a2-BD4D-4F3419755476}" "GeneratesDesignTimeSource"=dword:00000001 [HKEY_LOCAL_MACHINE\{hive}\SOFTWARE\Microsoft\VisualStudio\17.0_**_Config\Generators\{fae04ec1-301f-11d3-bf4b-00c04f79efbc}\MSDataSetGenerator] @="Microsoft C# Code Generator for XSD" "CLSID"="{E76D53CC-3D4F-40a2-BD4D-4F3419755476}" "GeneratesDesignTimeSource"=dword:00000001