Agregar asistentes a los cuadros de diálogo Agregar elemento y Nuevo proyecto mediante el uso de archivos .Vsdir

Un archivo VSDir es un archivo de texto con una extensión .vsdir que se crea a fin de proporcionar información sobre cómo mostrar sus elementos en los cuadros de diálogo Agregar elemento y Nuevo proyecto.La información incluye los nombres de los elementos, el orden en el que aparecen y el icono que se muestra con ellos.Puede cambiar cualquiera de estos elementos.Los archivos VSDir se utilizan para agregar plantillas nuevas o asistentes a los cuadros de diálogo Agregar elemento y Nuevo proyecto.

No hay ningún archivo VSDir predeterminado.Si hay un archivo VSDir, Visual Studio lo lee y agrega su contenido a los cuadros de diálogo.Si no hay ninguno, se muestran las plantillas y los asistentes predeterminados.Puede tener varios archivos VSDir en un solo directorio y todo el contenido se agregará a los cuadros de diálogo.Normalmente, un solo archivo VSDir contiene los registros para varios asistentes, carpetas y plantillas.Cada registro del archivo está separado por un carácter de nueva línea.Los campos de cada registro se separan con caracteres de barra vertical (|).Los campos opcionales para los que no existen datos significativos contienen un cero (0) o un espacio como marcador de posición.No es necesario que las cadenas especificadas en los campos estén entre comillas.

Componentes de los archivos VSDir

A continuación, se muestran ejemplos de archivos VSDir.El primero hace referencia a un solo asistente, uno que se creó en el tema Tutorial: Crear un asistente:

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

El siguiente archivo VSDir de ejemplo hace referencia a varios archivos .vsz del asistente, junto con otra información adecuada en relación con cada asistente (como se explica más adelante en este tema).Éstos son diferentes al archivo VSDir anterior en cuanto a que hacen referencia a las cadenas como números de identificador de recursos, no a las cadenas literales.Además, utilizan identificadores GUID para hacer referencia a archivos DLL.

..\..\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

Para cada registro de un archivo VSDir pueden especificarse los siguientes campos:

Campo

Significado

RelPathName

Obligatorio.Nombre del archivo .vsz del asistente, por ejemplo MyWizard.vsz, relativo al directorio de instalación de Visual Studio.

{clsidPackage}

Opcional.Identificador GUID que representa un producto (como Visual C++) el cual tiene una DLL que contiene recursos localizados.Normalmente, este campo aparece en blanco para archivos VSDir que se corresponden con asistentes de terceros.

LocalizedName

Opcional.Nombre localizable del asistente o de la plantilla y nombre que aparece en el cuadro de diálogo Agregar elemento.Puede ser una cadena o un identificador de recursos con la forma #ResID.

SortPriority

Obligatorio.Entero que representa el criterio de ordenación y la prioridad relativa del asistente, siendo 1 el valor más alto.Por ejemplo, si este elemento es "1", aparecerá junto a otros 1 y por delante de todos los 2 o inferiores.

Descripción

Obligatorio.Descripción localizable de la plantilla o del asistente tal y como aparecerá en el cuadro de diálogo Agregar elemento cuando el elemento esté seleccionado.Puede ser una cadena o un identificador de recursos con la forma #ResID.Se aplica sólo a archivos de plantilla, no a carpetas.

DLLPath o {clsidPackage}

Obligatorio.Especifica una ruta de acceso completa a un archivo DLL o EXE, o un identificador GUID de un producto que tiene un archivo .dll que contiene un icono para cargar para el asistente.El icono se carga como un recurso fuera de un archivo DLL/EXE, utilizando el IconResourceId dado.Esta configuración reemplaza el objeto {clsidPackage}, si se especifica, en la ubicación del icono.Se aplica sólo a archivos de plantilla, no a carpetas.

IconResourceId

Opcional.Identificador de recursos dentro del archivo DLL que determina el icono que se va a mostrar.Si no se define ningún icono, el entorno sustituye el icono predeterminado por un archivo con la misma extensión que el elemento.Se aplica sólo a archivos de plantilla, no a carpetas.

Marcadores

Opcional.Vea la descripción de Flags (marcadores) y la tabla que aparece más adelante.Se aplica sólo a archivos de plantilla, no a carpetas.

SuggestedBaseName

Obligatorio.Nombre predeterminado del asistente, mostrado en el campo Nombre del cuadro de diálogo.Puede ser una cadena o un identificador de recursos con el formato #ResID.Si el nombre no es único, el entorno anexa un entero al nombre.Por ejemplo, es posible que MyFile.aspx cambie a MyFile1.aspx.Si no se proporciona ningún nombre, se utiliza "Proyecto".Se aplica sólo a archivos de plantilla, no a carpetas.

  • Notas
    Los campos opcionales para los que no existen datos significativos tienen que contener un cero (0) como marcador de posición.

    Si no se proporciona un nombre traducido, se utiliza la ruta de acceso relativa.

    Si no se define un icono, el IDE sustituye el icono predeterminado para el archivo que tiene esa extensión.

    Si no se proporciona ninguna sugerencia de nombre base, se utiliza "Proyecto".

  • Marcadores
    Grupo de marcadores bit a bit que se utilizan para habilitar o deshabilitar los campos Nombre y Ubicación en el cuadro de diálogo Agregar elemento.Es decir, cuando el usuario selecciona Agregar nuevo elemento en el menú Agregar, el proyecto determina si el nombre y la ubicación se muestran en el panel Plantillas, pero los marcadores determinan si el nombre y la ubicación están disponibles para el usuario.

    Establezca el valor de Flags en la suma de los valores individuales.Es decir, 33 equivale a VSDIRFLAG_NonLocalTemplate | VSDIRITEM_DisableLocationField.

    Nombre del marcador

    Valor decimal

    Descripción

    VSDIRFLAG_NonLocalTemplate

    1

    Utiliza el comportamiento de una interfaz no local y guarda los mecanismos.

    VSDIRFLAG_BlankSolution

    2

    Crea una solución en blanco (vacía).No crea un proyecto.

    VSDIRFLAG_DisableBrowseButton

    4

    Deshabilita el botón Examinar para este proyecto o elemento.

    VSDIRFLAG_DontAddDefExtension

    8

    No anexa una extensión predeterminada al nombre proporcionado para el elemento.(Este valor no es válido para proyectos.)

    VSDIRFLAG_DisableLocationField

    32

    Deshabilita el campo de ubicación para este proyecto o elemento.

    VSDIRFLAG_DontInitNameField

    4096

    No inicializa el campo de nombre para este proyecto o elemento con un nombre válido.

    VSDIRFLAG_DisableNameField

    8192

    Deshabilita el campo de nombre para este proyecto o elemento.

Vea también

Tareas

Cómo: Crear un complemento

Tutorial: Crear un asistente

Conceptos

Diseñar un asistente

Configurar archivos .Vsz para iniciar asistentes

Otros recursos

Crear complementos y asistentes