Compartir a través de


Diseño de la tabla de comandos XML (. archivos de Vsct)

Un archivo de la tabla de comandos XML (.vsct) describe el diseño y la apariencia de los elementos de comando para un VSPackage. Los elementos command incluyen botones, cuadros combinados, menús, barras de herramientas, y grupos de elementos command. Este tema describe los archivos de tabla de comandos de XML, cómo afectan a los elementos y a menús de comando, y cómo crearlos.

comandos, menús, grupos, y el archivo de .vsct

los archivos de .vsct se organizan alrededor de comandos, de menús, y grupos de comando. Las etiquetas XML en el archivo de .vsct representan cada uno de estos elementos, junto con otros elementos asociados como botones de comando, posición de comando, y mapas de bits.

Cuando se crea un nuevo Paquete ejecutando la plantilla paquete de Visual Studio , la plantilla genera un archivo de .vsct con los elementos necesarios para un comando de menú, una ventana de herramientas, o un editor personalizado, dependiendo de las selecciones. Este archivo de .vsct podrá modificar para satisfacer los requisitos de un Paquete concreto. Para obtener ejemplos de cómo modificar un archivo de .vsct, vea los ejemplos de Tutoriales para los comandos, menús, barras de herramientas y.

Para crear un nuevo, esconda el archivo de .vsct, vea Cómo: Cree en. archivo de Vsct. Una vez creado, agrega elementos XML, atributos, y valores al archivo para describir el diseño del elemento command. Para un esquema XML detallado, vea Referencia del esquema XML de VSCT.

Diferencias Entre .ctc y archivos de .vsct

Mientras el significado detrás de las etiquetas XML en un archivo de .vsct es lo mismo que los del formato de archivo desusada now de .ctc, su implementación es un poco.

  • La nueva etiquetade <extern> es donde se hace referencia a otros archivos .h para generar, como las de la barra de herramientas de Visual Studio .

  • Aunque los archivos de .vsct admiten la instrucción de /include , igual que los archivos de .ctc, también las características un nuevo elemento de <import> . La diferencia es, /include a toda la información, pero <import> a solo los nombres.

  • Aunque los archivos de .ctc requieren un archivo de encabezado en el que se defina las directivas de preprocesador, una no se requiere para los archivos de .vsct. En su lugar, coloque las directivas en la tabla de símbolos, ubicada en los elementos de símbolo , situados en la parte inferior del archivo de .vsct.

  • característica de los archivos de .vsct una etiqueta de <Annotation> , que permite insertar cualquier información desee, por ejemplo notas o incluso imágenes.

  • los valores se almacenan como atributos en el elemento.

  • Los indicadores de comando se pueden almacenar individualmente o ser apilados. Intellisense, sin embargo, no funciona en los indicadores apilados de comando. Para obtener más información sobre las marcas de comando, vea CommandFlag (Elemento).

  • Puede especificar varios tipos, como desplegables, combinaciones, etc. divididos.

  • GUID no valida.

  • Cada elemento de la interfaz de usuario tiene una cadena que representa el texto que se muestra con él.

  • el elemento primario es opcional. Si se omite, se usa el valor “desconocido del grupo”.

  • El argumento del icono es opcional.

  • La sección bitmap -- Igual que un archivo de .ctc, salvo que se ahora pueden especificar un nombre de archivo mediante el href que se extraen del compilador de vsct.exe en tiempo de compilación.

  • ResID -- el antiguo Id. de recurso de mapa de bits se puede utilizar y todavía funciona igual que en archivos de .ctc.

  • HRef -- un nuevo método que le permite especificar un nombre de archivo para el recurso de mapa de bits. Se supone que todos se utilizan, por lo que puede omitir la sección utilizada. El compilador primero busca los recursos locales para el archivo, en cualquier acción neta, y cualquier recursos definidos por el modificador /I.

  • Keybinding -- Ya no es necesario especificar un emulador. Si se especifica uno, el compilador supondrá que el editor y el emulador son iguales.

  • Keychord -- se ha interrumpido. el nuevo formato es Key1, Mod1, Key2, Mod2. Puede especificar un carácter, hexadecimal, o una constante de VK.

El nuevo compilador, vsct.exe, compila .ctc y archivos de .vsct. El compilador anterior de ctc.exe, sin embargo, ni reconocerá ni compilará los archivos de .vsct.

Puede utilizar el compilador de vsct.exe para convertir un archivo existente de .cto en un archivo de .vsct. Para obtener más información sobre este tema, vea Cómo: Cree en. Archivo de Vsct de un Existente. Archivo de Cto.

Los elementos del archivo de .vstc

La tabla de comandos tiene la jerarquía y elementos siguientes:

CommandTable (Elemento) — Representa todos los comandos, grupos de menús, y menús asociado al Paquete.

Extern (Elemento) — referencias cualquier archivo externo .h que desee combinar con el archivo de .vstc.

Include (Elemento) — referencias cualquier encabezado adicional .h archivos que desea compilar junto con el archivo de the.vstc. Un archivo de .vstc puede incluir los archivos .h que contienen constantes que definen comandos, grupos de menús, y menús que el IDE u otro paquete VSPackage proporciona.

Commands (Elemento) — Representa todos los comandos individuales que pueden ejecutarse. cada comando tiene los cuatro elementos secundarios siguientes:

Menus (Elemento) — Representa todos los menús y barras de herramientas en el Paquete. Los menús son contenedores para grupos de comandos.

Groups (Elemento) — Representa todos los grupos en el Paquete. los grupos son colecciones de comandos individuales.

Buttons (Elemento) — Representa todos los botones de comando y elementos de menú en el Paquete. Los botones son controles visuales que pueden estar asociado con comandos.

Bitmaps (Elemento) — Representa todos los mapas de bits para todos los botones en el Paquete. Los mapas de bits son las imágenes al lado de las que muestran o de los botones de comando, dependiendo del contexto.

Ubicaciones adicionales deCommandPlacements (Elemento) — Indica donde los comandos individuales deben adaptarse en los menús de VSPackage.

VisibilityConstraints (Elemento) — especifica si un comando muestra siempre, o sólo en ciertos contextos, como cuando se muestra un cuadro de diálogo o una ventana determinado. Los menús y comandos que tienen un valor para este elemento mostrarán únicamente cuando el contexto especificado está activa. El comportamiento predeterminado es mostrar el comando siempre.

KeyBindings (Elemento) — especifica cualquier enlace de teclado para los comandos. Es decir, una o varias combinaciones de teclas que deben presionar para ejecutar el comando, como CTRL+S.

UsedCommands (Elemento) — Informs el entorno de Visual Studio que aunque otro código implementa el comando especificado, cuando el Paquete actual está activa, proporciona la implementación del comando.

Symbols Element — Contiene los nombres de símbolo y los id. de GUID para todos los comandos del paquete.

. Instrucciones de diseño del archivo de Vsct

Para diseñar correctamente un archivo de .vsct, siga estas instrucciones.

  • Los comandos pueden colocar sólo en grupos, grupos pueden colocar sólo en menús, y menús sólo se pueden colocar en grupos. Sólo los menús se muestran realmente en el IDE, grupos y los comandos y.

  • Los submenús no se pueden asignar directamente a un menú, pero deben asignarse a un grupo, que a su vez se asigna a un menú.

  • Los comandos, muestran submenús y grupos pueden asignarse a un grupo o menú de relación jerárquica mediante el campo primario de la directiva de definición.

  • Organizar una tabla de comandos a través de los campos primarios en directivas sólo tiene una limitación significativa. Las directivas que definen objetos pueden tomar solo un argumento primario.

  • Reutilizando comandos, grupos, o los submenús requieren el uso de una nueva directiva de crear una nueva instancia del objeto con sus propios pares de GUID:ID .

  • cada par de GUID:ID debe ser único. Reutilizando un comando que, por ejemplo, se ha colocado en un menú, una barra de herramientas, o en un menú contextual, administra la interfaz de IOleCommandTarget .

  • Los comandos y los submenús también pueden asignar varios grupos, y los grupos se pueden asignar a los menús varias mediante Commands (Elemento).

. Notas del archivo de Vsct

Si realiza cualquier cambio en un archivo de .vsct después de que se compile y se pusiera en un natural DLL satélite, debe ejecutar devenv.exe /setup /nosetupvstemplates. Esto fuerza a los recursos de VSPackage especificados en el registro experimental que se releerá y la base de datos interna que describe Visual Studio se recompile.

Durante el desarrollo, es posible que registrans varios proyectos de VSPackage se crean y en el subárbol experimental de registro que puede causar un montón confuso en el IDE. Para corregir este problema, puede restaurar el subárbol experimental en las configuraciones predeterminadas para quitar todos los VSPackages registrado y cualquier cambio que se haya realizado en el IDE. Para restaurar el subárbol experimental, utilice la herramienta de vsregex.exe que viene con Visual Studio SDK. Esta herramienta se encuentra en la carpeta ent dict AnyPathTillLastSlash de herramientas (por ejemplo, C: \Program Files\Visual Studio 2010 SDK\VisualStudioIntegration\Tools\Bin \ vsregexe.exe). Ejecute la herramienta mediante la línea de comandos vsregex GetOrig 10.0 Expdonde es la versión 10.0 de Visual Studio que usa, y Exp es el sufijo anexado a la versión para obtener el subárbol experimental del registro en HKEY_CURRENT_USER.

Recuerde que la herramienta de vsregex.exe quita del subárbol experimental todo el VSPackages registrado instalado no normalmente con Visual Studio.

Vea también

Conceptos

Making Commands Available

Otros recursos

Command Table Configuration (.ctc) Files

Command Table Format Reference

Tareas comunes con los comandos, menús, barras de herramientas y