Compartir vía


Registro de controladores de comandos de ensamblado de interoperabilidad

Un VSPackage debe registrarse con Visual Studio para que el entorno de desarrollo integrado (IDE) enrute sus comandos correctamente.

El registro se puede actualizar mediante la edición manual o mediante un archivo Registrador (.rgs). Para obtener más información, consulta Creating Registrar Scripts.

Managed Package Framework (MPF) proporciona esta funcionalidad a través de la ProvideMenuResourceAttribute clase .

  • Los recursos de referencia de formato de tabla de comandos se encuentran en archivos DLL de interfaz de usuario satélite no administrados.

Registro del controlador de comandos de un VSPackage

Un VSPackage que actúa como controlador para los comandos basados en la interfaz de usuario (UI) requiere una entrada del Registro denominada después de VSPackage GUID. Esta entrada del Registro especifica la ubicación del archivo de recursos de la interfaz de usuario de VSPackage y el recurso de menú dentro de ese archivo. La propia entrada del Registro se encuentra en HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>\Menus, donde< Version> es la versión de Visual Studio, por ejemplo 9.0.

Nota:

La ruta de acceso raíz de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<Version> se puede invalidar con una raíz alternativa cuando se inicializa el shell de Visual Studio. Para obtener más información sobre la ruta de acceso raíz, consulte Instalación de VSPackages con Windows Installer.

Entrada del Registro de recursos CTMENU

La estructura de la entrada del Registro es:

HKEY_LOCAL_MACHINE\Software\VisualStudio\<Version>\
  Menus\
    <GUID> = <Resource Information>

<GUID> es del GUID VSPackage con el formato {XXXXXX-XXXX-XXXX-XXXX-XXXX-XXXXXXXXX}.

<> Información de recursos consta de tres elementos separados por comas. Estos elementos son, en orden:

<Ruta de acceso a la DLL> de recursos, <id.> de recurso de menú, <versión del menú>

En la tabla siguiente se describen los campos de información> de <recursos.

Elemento Descripción
<Ruta de acceso a la DLL de recursos> Esta es la ruta de acceso completa al archivo DLL de recursos que contiene el recurso de menú o se deja en blanco, lo que indica que se va a usar la DLL de recursos de VSPackage (como se especifica en la subclave Packages donde se registra el propio VSPackage).

Es habitual dejar este campo en blanco.
<Id. de recurso de menú> Este es el identificador de recurso del CTMENU recurso que contiene todos los elementos de la interfaz de usuario de VSPackage como compilados a partir de un archivo .vsct .
<Versión del menú> Se trata de un número que se usa como una versión para el CTMENU recurso. Visual Studio usa este valor para determinar si necesita remerge el contenido del CTMENU recurso con su memoria caché de todos los CTMENU recursos. Una repetición se desencadena mediante la ejecución del comando de instalación de devenv.

Este valor debe establecerse inicialmente en 1 e incrementarse después de cada cambio en el CTMENU recurso y antes de que se produzca la repetición.

Ejemplo

Este es un ejemplo de un par de entradas de recursos:

HKEY_LOCAL_MACHINE\Software\VisualStudio\9.0Exp\
  Menus\
    {019971D6-4685-11D2-B48A-0000F87572EB} = ,1, 10
    {1b027a40-8f43-11d0-8d11-00a0c91bc942} = , 10211, 3