Freigeben über


Hinzufügen von Assistenten zu den Dialogfeldern Element hinzufügen und Neues Projekt mithilfe von VSDIR-Dateien

Add-Ins für Visual Studio sind in Visual Studio 2013 veraltet. Sie müssen für Ihre Add-Ins ein Upgrade auf VSPackage-Erweiterungen durchführen. Weitere Informationen über das Durchführen eines Upgrades finden Sie unter FAQ: Konvertieren von Add-Ins in VSPackage-Erweiterungen.

Eine VSDIR-Datei ist eine Textdatei mit der Erweiterung .vsdir, die Sie erstellen, um Informationen zum Anzeigen der betreffenden Elemente in den Dialogfeldern Element hinzufügen und Neues Projekt bereitzustellen. Hierzu zählen die Namen der Elemente, die Reihenfolge, in der sie angezeigt werden, und das zugehörige Symbol. Sie können jedes dieser Elemente ändern. VSDIR-Dateien werden verwendet, um den Dialogfeldern Element hinzufügen und Neues Projekt neue Vorlagen oder Assistenten hinzuzufügen.

Es gibt keine standardmäßige VSDIR-Datei. Wenn eine solche Datei vorhanden ist, wird sie von Visual Studio gelesen und deren Inhalt den Dialogfeldern hinzugefügt. Ist keine vorhanden, werden die Standardvorlagen und -assistenten angezeigt. In einem Verzeichnis können mehrere VSDIR-Dateien enthalten sein, deren Inhalt jeweils den Dialogfeldern hinzugefügt wird. Üblicherweise enthält eine einzelne VSDIR-Datei Datensätze für mehrere Assistenten, Ordner und Vorlagen. Die Datensätze in der Datei werden durch ein Zeilenumbruchzeichen voneinander getrennt, während die Felder in den Datensätzen anhand von senkrechten Strichen (|) voneinander getrennt werden. Ein optionales Feld, für das es keine sinnvollen Daten gibt, enthält als Platzhalter null (0) oder ein Leerzeichen. In Felder eingegebene Zeichenfolgen müssen nicht in Anführungszeichen gesetzt werden.

Komponenten von VSDIR-Dateien

Im Folgenden finden Sie Beispiele für VSDIR-Dateien. In der ersten wird auf einen einzelnen Assistenten verwiesen, der im Thema Exemplarische Vorgehensweise: Erstellen eines Assistenten erstellt wurde:

MyNewWizard.vsz| |A New Wizard|1|My New Wizard|C:\Addins\MyNewWizard\MyNewWizard\bin\Debug| | |MyNewWizard99

In der nächsten VSDIR-Beispieldatei wird auf mehrere VSZ-Dateien für Assistenten verwiesen. Zudem enthält die Datei weitere relevante Informationen zu den einzelnen Assistenten (wie weiter unten in diesem Thema beschrieben). Der Unterschied zur vorherigen VSDIR-Datei besteht darin, dass auf Zeichenfolgen als Ressourcen-IDs und nicht als Zeichenfolgenliterale verwiesen wird. Zudem werden GUIDs verwendet, um auf DLLs zu verweisen.

..\..\Projects\csharp building blocks\BusinessFacade.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5015|10|#5022|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|127|0|Project
..\..\Projects\csharp building blocks\BusinessRules.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5016|20|#5023|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|128|0|Project
..\..\Projects\csharp building blocks\DataAccess.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5017|30|#5024|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|129|0|Project
..\..\Projects\csharp building blocks\SystemFrameworks.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5018|40|#5025|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|130|0|Project
..\..\Projects\csharp building blocks\WebService.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5019|50|#5026|{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}|4547|1|WebService|Web
..\..\Projects\csharp building blocks\WebUI.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5020|60|#5027|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|131|1|WebUI|web
..\..\Projects\csharp building blocks\WinUI.vsz|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|#5021|70|#5028|{AE77B8D0-6BDC-11d2-B354-0000F81F0C06}|132|0|Project

Für jeden Datensatz in einer VSDIR-Datei können die folgenden Felder angegeben werden:

Feld

Bedeutung

RelPathName

Erforderlich. Der Name der VSZ-Datei des Assistenten, z. B. MyWizard.vsz, der relativ zum Visual Studio-Installationsverzeichnis angegeben wird.

{clsidPackage}

Optional. Eine GUID, die ein Produkt (wie Visual C++) darstellt, das über eine DLL mit lokalisierten Ressourcen verfügt. Dieses Feld ist bei VSDIR-Dateien für Assistenten von Drittanbietern leer.

LocalizedName

Optional. Hierbei handelt es sich um den lokalisierbaren Namen des Assistenten oder der Vorlage und den Namen, der im Dialogfeld Element hinzufügen angezeigt wird. Es kann sich dabei um eine Zeichenfolge oder eine Ressourcenkennung in der Form #ResID handeln.

SortPriority

Erforderlich. Eine ganze Zahl, die die Sortierreihenfolge und die relative Priorität des Assistenten darstellt, wobei 1 die höchste Priorität bezeichnet. Wenn der Wert dieses Elements beispielsweise "1" beträgt, wird es neben anderen Elementen mit einer "1" und vor allen Elementen mit einer "2" oder niedrigerem Wert angezeigt.

Description

Erforderlich. Eine lokalisierbare Beschreibung der Vorlage oder des Assistenten, die bei Auswahl des Elements im Dialogfeld Element hinzufügen angezeigt wird. Es kann sich dabei um eine Zeichenfolge oder eine Ressourcenkennung in der Form #ResID handeln. Dieses Feld gilt nur für Vorlagendateien und nicht für Ordner.

DLL-Pfad oder {CLSID-Paket}

Erforderlich. Gibt einen vollständigen Pfad zu einer DLL- oder EXE-Datei an oder eine GUID eines Produkts mit einer DLL-Datei, die ein Symbol enthält, das für den Assistenten geladen werden soll. Das Symbol wird anhand der angegebenen IconResourceId als Ressource aus einer DLL-/EXE-Datei geladen. Diese Einstellung überschreibt {clsidPackage} für den Symbolspeicherort (sofern angegeben). Dieses Feld gilt nur für Vorlagendateien und nicht für Ordner.

Symbolressourcenkennung

Optional. Eine Ressourcenkennung in der DLL-Datei, die das anzuzeigende Symbol bestimmt. Ist kein Symbol definiert, ersetzt die Umgebung das Standardsymbol einer Datei mit derselben Dateinamenerweiterung wie das Element. Dieses Feld gilt nur für Vorlagendateien und nicht für Ordner.

Flags

Optional. Eine Beschreibung der Flags finden Sie in der unten stehenden Tabelle. Dieses Feld gilt nur für Vorlagendateien und nicht für Ordner.

SuggestedBaseName

Erforderlich. Der Standardname für den Assistenten, der im Dialogfeld im Feld Name angezeigt wird. Dabei handelt es sich um eine Zeichenfolge oder eine Ressourcenkennung in der Form #ResID. Ist der Name nicht eindeutig, fügt die Umgebung am Ende des Namens eine ganze Zahl ein. MyFile.aspx kann beispielsweise in MyFile1.aspx geändert werden. Wird kein Name angegeben, wird "Project" verwendet. Dieses Feld gilt nur für Vorlagendateien und nicht für Ordner.

  • Hinweise
    Ein optionales Feld, für das es keine sinnvollen Daten gibt, sollte als Platzhalter 0 (null) enthalten.

    Wird kein lokalisierter Name angegeben, wird der relative Pfad verwendet.

    Ist kein Symbol definiert, ersetzt die IDE das Standardsymbol einer Datei mit dieser Erweiterung.

    Wird kein vorgeschlagener Basisname angegeben, wird "Project" verwendet.

  • Flags
    Eine Gruppe von bitweisen Flags, die im Dialogfeld Element hinzufügen die Felder Name und Speicherort aktivieren oder deaktivieren. Wenn der Benutzer also unter Hinzufügen die Option Neues Element hinzufügen auswählt, legt das Projekt zwar fest, ob der Name und Speicherort im Bereich Vorlagen angezeigt werden, aber die Flags legen fest, ob der Name und Speicherort dem Benutzer zur Verfügung stehen.

    Legen Sie den Wert von Flags auf die Summe fest, die sich aus den einzelnen Werten ergibt. 33 entspricht somit VSDIRFLAG_NonLocalTemplate | VSDIRITEM_DisableLocationField.

    Flagname

    Dezimalwert

    Beschreibung

    VSDIRFLAG_NonLocalTemplate

    1

    Verhalten einer nicht lokalen Benutzeroberfläche und Speichermechanismen verwenden.

    VSDIRFLAG_BlankSolution

    2

    Eine leere Projektmappe erstellen. Kein Projekt erstellen.

    VSDIRFLAG_DisableBrowseButton

    4

    Für dieses Projekt oder Element die Schaltfläche Durchsuchen deaktivieren.

    VSDIRFLAG_DontAddDefExtension

    8

    Keine Standarderweiterung an den für das Element bereitgestellten Namen anhängen. (Diese Einstellung ist für Projekte unzulässig.)

    VSDIRFLAG_DisableLocationField

    32

    Für dieses Projekt oder Element das Feld Speicherort deaktivieren

    VSDIRFLAG_DontInitNameField

    4096

    Für dieses Projekt oder Element nicht das Feld Name mit einem gültigen Namen initialisieren.

    VSDIRFLAG_DisableNameField

    8192

    Für dieses Projekt oder Element das Feld Name deaktivieren

Siehe auch

Aufgaben

Gewusst wie: Erstellen von Add-Ins

Exemplarische Vorgehensweise: Erstellen eines Assistenten

Konzepte

Entwerfen eines Assistenten

Konfigurieren von VSZ-Dateien zum Starten von Assistenten

Weitere Ressourcen

Erstellen von Add-Ins und Assistenten