(Vorlagen-Verzeichnis-Beschreibung. Dateien Vsdir)
Eine Vorlagen verzeichnis-Beschreibungs .vsdir (Datei) ist eine Textdatei, die die integrierte Entwicklungsumgebung (IDE) können zum Anzeigen von Ordnern und Dateien des Assistenten .vsz mit dem Projekt die Vorlagendateien in den Dialogfeldern zugeordnet sind. Das Inhalt umfassen ein Datensatz pro Datei oder Ordner. Alle in einem Speicherort, auf den verwiesen wird .vsdir-Dateien zusammengeführt wurden, obwohl nur eine .vsdir-Datei im Allgemeinen bereitgestellt wird, um mehrere Ordner Assistenten oder Vorlagendateien zu beschreiben.
Ordner (Unterverzeichnisse), Dateien, die in die .vsdir-Datei verwiesen wird und die .vsdir-Datei auch alle befinden sich im selben Verzeichnis. Wenn die IDE einen Assistenten ausführt oder einen Ordner oder eine Datei in Neues Projekt oder Neues Element hinzufügen Dialogfeldern angezeigt wird, überprüft die IDE das Verzeichnis, das die Ausführung von Dateien enthält, um zu bestimmen, ob eine .vsdir-Datei vorhanden ist. Wenn eine .vsdir-Datei gefunden wird, liest sie die IDE, um zu bestimmen, ob es einen Eintrag für den laufenden oder angezeigten Ordner oder die Datei enthält. Wenn ein Eintrag gefunden wird, wird die IDE die Informationen in der Ausführung des Assistenten oder der Anzeige des Inhalts.
Im folgenden Codebeispiel ist die Datei SourceFiles.vsdir im Ordner " \ \ BscPrj <EnvSDK> Registrierungsschlüssel in BscPrj \ BscPrjProjectItems \ Source_Files:
HeaderFile.h|{E59935A1-6156-11d1-87A6-00A0C91E2A46}|#125|130|#126|0|0|0|#127
SourceFile.cpp|{E59935A1-6156-11d1-87A6-00A0C91E2A46}|#122|110|#123|0|0|0|#124
In diesem Fall sind zwei Datensätze in einer Datei. Eine neue Zeile (Wagenrücklaufzeichen) trennt jeder Datensatz. Jede Zeile stellt einen anderen Dateityp dar. Eine Pipe (|Felder in Zeichen) trennt den einzelnen Datensätzen. Ein einzelnes Verzeichnis kann mehrere .vsdir-Dateien enthalten, die verschiedene Dateinamen haben, oder Sie können eine .vsdir-Datei für jeden Dateityp aufweisen.
Felder
In der folgenden Tabelle sind die Felder aufgeführt, die für jeden Datensatz angegeben werden.
Feld |
Beschreibung |
---|---|
Der relative Pfad (RelPathName) |
Der Name des Ordners, der die ursprünglichen oder der VSZ-Datei, wie HeaderFile.h oder MyWizard.vsz. Dieses Feld kann auch ein Name sein, der verwendet wird, um einen Ordner darzustellen. |
{clsidPackage} |
Die GUID VSPackages das den Zugriff auf lokalisierten Zeichenfolgen, wie LocalizedName, Beschreibung, IconResourceId und SuggestedBaseName aktiviert, VSPackages Satelliten Ressourcen Dynamic Link Library (DLL). IconResourceId gilt, wenn DLLPath nicht angegeben wurde. Hinweis Dieses Feld ist optional, es sei denn, eine oder mehrere der vorherigen Schachtelt einen Ressourcenbezeichner ist.Dieses Feld ist i. d. R. für .vsdir-Dateien, die von Drittanbietern Assistenten entsprechen, die nicht den Text suchen. |
LocalizedName |
Der lokalisierte Name der Vorlagendatei oder des Assistenten. Dieses Feld kann eine Zeichenfolge oder ein Ressourcenbezeichner der Form „#ResID“ sein. Dieser Name wird im Neues Element hinzufügen Dialogfeld angezeigt. Hinweis Wenn LocalizedName ein Ressourcenbezeichner ist, {clsidPackage} " ist erforderlich. |
SortPriority |
Eine ganze Zahl, die die relative Priorität der Vorlagendatei oder Assistenten darstellt. Wenn dieses Element den Wert 1 aufweist, wird dieses Element neben den anderen Elementen mit einem Wert von 1 und vor allen Elementen mit einem Wert für Sortieren von 2 oder größer angezeigt. Sortierpriorität ist relativ zu den Elementen in demselben Verzeichnis. Es gibt möglicherweise mehrere .vsdir-Datei sich im selben Verzeichnis. In diesem Fall werden die Elemente aus allen .vsdir-Dateienin diesem Verzeichnis zusammengeführt. Elemente mit der gleichen Priorität werden in der Groß- und Kleinschreibung der lexikografischen Reihenfolge des angezeigten Namens aufgelistet. Die _wcsicmp-Funktion wird verwendet, um die Elemente zu sortieren. Die Elemente, die nicht in .vsdir-Dateien beschrieben werden, enthalten eine Prioritätsnummer größer als die höchste Priorität Zahl, die in den .vsdir-Dateien aufgeführt ist. Das Ergebnis ist, dass diese Elemente am Ende der angezeigten Liste unabhängig von ihrem Namen sind. |
Beschreibung |
Die lokalisierte Beschreibung der Vorlagendatei oder des Assistenten. Dieses Feld kann eine Zeichenfolge oder ein Ressourcenbezeichner der Form „#ResID“ sein. Diese Zeichenfolge wird im Neues Projekt oder Neues Element hinzufügen Dialogfeld, wenn das Element ausgewählt ist. |
DLL-Pfad oder {CLSID-Paket} |
Wird verwendet, um ein Symbol für die Vorlagendatei oder den Assistenten zu laden. Das Symbol wird als Ressource aus einer DLL- oder EXE-Datei geladen, indem das IconResourceId verwendet. Dieses DLL- oder EXE-Datei können angegeben werden, indem ein vollständiger Pfad oder eine GUID aus einem VSPackage verwendet. Die Implementierung DLL VSPackages wird verwendet, um das Symbol (nicht die Satelliten-DLL) zu laden. |
Symbolressourcenkennung |
Der Ressourcenbezeichner in der DLL- oder VSPackage-Implementierung DLL, die das Symbol bestimmt, die angezeigt werden sollen. |
Flags (__VSDIRFLAGS) |
Wird verwendet, um die Name und Speicherort Felder im Dialogfeld Neues Element hinzufügen zu aktivieren oder zu deaktivieren. Der Wert des Felds Flags dezimale ist die Entsprechung der Kombination der erforderlichen Bitflags. Wenn ein Benutzer ein Element auf der Registerkarte Neu auswählen, bestimmt das Projekt, ob das Feld Name und das Feld Speicherort angezeigt, wenn das Dialogfeld Neues Element hinzufügen zuerst angezeigt wird. Ein Element kann durch eine .vsdir-Datei steuern, ob Felder nur für deaktiviertes aktiviert werden, wenn das Element ausgewählt ist. |
SuggestedBaseName |
Stellt den Standardnamen für die Datei, den Assistenten oder die Vorlage dar. Dieses Feld ist entweder eine Zeichenfolge oder ein Ressourcenbezeichner der Form „#ResID“. Die IDE verwendet diesen Wert, um einen Standardnamen für das Element angegeben. Der Basiswert ist mit einem ganzzahligen Wert angefügt, um den Namen eindeutig zu machen, wie MyFile21.asp. In der obigen Liste DLLPath, Beschreibung, gelten IconResourceId und Flags, SuggestedBaseNumber nur für Master- und Assistenten werden. Diese Felder gelten nicht für Ordner zu. Dieser Tatsache wird im Code in der BscPrjProjectItems-Datei in <EnvSDK> \ \ BscPrj Registrierungsschlüssel BscPrj \ BscPrjProjectItems veranschaulicht. Diese Datei enthält drei Datensätzen (einen für jeden Ordner) mit vier Feldern für jeden Datensatz: RelPathName, {,} clsidPackage LocalizedName und SortPriority. General|{E59935A1-6156-11d1-87A6-00A0C91E2A46}|#110|100 Source_Files|{E59935A1-6156-11d1-87A6-00A0C91E2A46}|#111|110 Env|{E59935A1-6156-11d1-87A6-00A0C91E2A46}|#112|120 |
Wenn Sie eine Assistentendatei erstellen, sollten Sie die folgenden Punkte berücksichtigen außerdem.
Ein optionales Feld, für das es keine sinnvollen Daten gibt, sollte als Platzhalter 0 (null) enthalten.
Wenn kein lokalisierter Name angegeben ist, wird der relative Pfad in der Assistentendatei verwendet.
Symbol für clsidPackage überschreibt DLLPath Speicherort.
Ist kein Symbol definiert, ersetzt die IDE das Standardsymbol einer Datei mit dieser Erweiterung verfügt.
Wenn kein vorgeschlagener Basisname angegeben, wird „Project“ verwendet wird.
Wenn Sie die .vsz-Dateien, Ordner oder Vorlagendateien löschen, müssen Sie die zugehörigen Datensätze aus der .vsdir-Datei auch entfernen.