Registrieren von Projekt- und Elementvorlagen
Projekttypen müssen die Verzeichnisse registrieren, in denen sich ihre Projekt- und Projektelementvorlagen befinden. Visual Studio verwendet die Registrierungsinformationen, die Ihren Projekttypen zugeordnet sind, um zu bestimmen, was in den Dialogfeldern "Neues Projekt hinzufügen" und "Neues Element hinzufügen" angezeigt werden soll.
Weitere Informationen zu Vorlagen finden Sie unter Hinzufügen von Projekt- und Projektelementvorlagen.
Registrierungseinträge für Projekte
Die folgenden Beispiele zeigen Registrierungseinträge unter HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>. In den zugehörigen Tabellen werden die in den Beispielen verwendeten Elemente erläutert.
[Projects\{ProjectGUID}]
@="MyProjectType"
"DisplayName"="#2"
"Package"="{VSPackageGUID}"
"ProjectTemplatesDir"="C:\\MyProduct\\MyProjectTemplates"
Name | Typ | Beschreibung |
---|---|---|
@ | REG_SZ | Standardname von Projekten dieser Art. |
DisplayName | REG_SZ | Ressourcen-ID des Namens, der aus der Satelliten-DLL abgerufen werden soll, die unter "Pakete" registriert ist. |
Paket | REG_SZ | Klassen-ID des Pakets, das unter "Pakete" registriert ist. |
ProjectTemplatesDir | REG_SZ | Standardpfad der Project-Vorlagendateien. Die Projektvorlagendateien werden von der Vorlage "Neues Projekt " angezeigt. |
Registrieren von Elementvorlagen
Sie müssen das Verzeichnis registrieren, in dem Sie Elementvorlagen speichern.
[Projects\{ProjectGUID}\AddItemTemplates\TemplateDirs\{VSPackageGUID}\1]
@="#7"
"TemplatesDir"="C:\\MyProduct\\MyProjectItemTemplates "
"TemplatesLocalizedSubDir"="#10"
"SortPriority"=dword:00000064
Name | Typ | Beschreibung |
---|---|---|
@ | REG_SZ | Ressourcen-ID für "Elementvorlagen hinzufügen". |
TemplatesDir | REG_SZ | Pfad der Projektelemente, die im Dialogfeld für den Assistenten zum Hinzufügen neuer Elemente angezeigt werden. |
TemplatesLocalizedSubDir | REG_SZ | Ressourcen-ID einer Zeichenfolge, die das Unterverzeichnis von TemplatesDir benennt, das lokalisierte Vorlagen enthält. Da Visual Studio die Zeichenfolgenressource aus Satelliten-DLLs lädt, wenn sie vorhanden sind, kann jede Satelliten-DLL einen anderen lokalisierten Unterverzeichnisnamen enthalten. |
SortPriority | REG_DWORD | Legen Sie "SortPriority" fest, um die Reihenfolge zu steuern, in der Vorlagen im Dialogfeld "Neues Element hinzufügen" angezeigt werden. Größere SortPriority-Werte werden weiter oben in der Vorlagenliste angezeigt. |
Registrieren von Dateifiltern
Optional können Sie Filter registrieren, die Visual Studio verwendet, wenn sie zur Eingabe von Dateinamen aufgefordert wird. Der Visual C#-Filter für das Dialogfeld "Datei öffnen" lautet beispielsweise:
Visual C#-Dateien (*.cs,*.resx,*.settings,*.xsd,*.wsdl);*.cs,*.resx,*.settings,*.xsd,*.wsdl)
Zur Unterstützung der Registrierung mehrerer Filter wird jeder Filter in einem eigenen Unterschlüssel unter HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>\Projects\{<ProjectGUID>}\Filters\<Subkey> registriert. Der Unterschlüsselname ist beliebig; Visual Studio ignoriert den Namen des Unterschlüssels und verwendet nur dessen Werte.
Sie können die Kontexte steuern, in denen ein Filter verwendet wird, indem Sie Flags festlegen, die in der folgenden Tabelle dargestellt sind. Wenn für einen Filter keine Kennzeichnungen festgelegt sind, wird er nach den allgemeinen Filtern im Dialogfeld "Vorhandenes Element hinzufügen" und im Dialogfeld "Datei öffnen" aufgelistet, wird aber nicht im Dialogfeld "In Dateien suchen" verwendet.
[Projects\{ProjectGUID}\Filters\MyLanguageFilter]
@="#3"
"CommonOpenFilesFilter"=dword:00000000
"CommonFindFilesFilter"=dword:00000000
"FindInFilesFilter"=dword:00000000
"NotOpenFileFilter"=dword:00000000
"NotAddExistingItemFilter"=dword:00000000
"SortPriority"=dword:00000064
Name | Typ | Beschreibung |
---|---|---|
CommonFindFilesFilter | REG_DWORD | Macht den Filter zu einem der allgemeinen Filter im Dialogfeld "In Dateien suchen". Allgemeine Filter werden in der Filterliste aufgelistet, bevor Filter nicht als häufig markiert sind. |
CommonOpenFilesFilter | REG_DWORD | Macht den Filter zu einem der allgemeinen Filter im Dialogfeld "Datei öffnen". Allgemeine Filter werden in der Filterliste aufgelistet, bevor Filter nicht als häufig markiert sind. |
FindInFilesFilter | REG_DWORD | Listet den Filter nach den allgemeinen Filtern im Dialogfeld "In Dateien suchen" auf. |
NotOpenFileFilter | REG_DWORD | Gibt an, dass der Filter nicht im Dialogfeld "Datei öffnen" verwendet wird. |
NotAddExistingItemFilter | REG_DWORD | Gibt an, dass der Filter nicht im Dialogfeld "Vorhandenes Element hinzufügen" verwendet wird. |
SortPriority | REG_DWORD | Legen Sie "SortPriority" fest, um die Reihenfolge zu steuern, in der Filter angezeigt werden. Größere SortPriority-Werte werden weiter oben in der Filterliste angezeigt. |
Verzeichnisstruktur
VSPackages können Vorlagendateien und Ordner an einer beliebigen Stelle auf einem lokalen oder Remotedatenträger ablegen, solange der Speicherort über die integrierte Entwicklungsumgebung (IDE) registriert ist. Zur Vereinfachung der Organisation empfehlen wir jedoch die folgende Verzeichnisstruktur unter dem Installationspfad Ihres Produkts.
\Vorlagen
\Projekte (enthält die Projektvorlagen)
\Applications
\Komponenten
\ ...
\ProjectItems (enthält die Projektelemente)
\Klasse
\Form
\Webseite
\HelperFiles (enthält die Dateien, die in Projektelementen mit mehreren Dateien verwendet werden)
\WizardFiles