Partager via


Inscription des gestionnaires de commandes d’assemblys d’interopérabilité

Un VSPackage doit s’inscrire auprès de Visual Studio afin que l’environnement de développement intégré (IDE) route correctement ses commandes.

Le Registre peut être mis à jour en modifiant manuellement ou en utilisant un fichier de bureau d’enregistrement (.rgs). Pour plus d'informations, consultez Creating Registrar Scripts.

Managed Package Framework (MPF) fournit cette fonctionnalité via la ProvideMenuResourceAttribute classe.

Inscription du gestionnaire de commandes d’un VSPackage

Un VSPackage agissant en tant que gestionnaire pour les commandes basées sur l’interface utilisateur nécessite une entrée de Registre nommée après VSPackage GUID. Cette entrée de Registre spécifie l’emplacement du fichier de ressources de l’interface utilisateur de VSPackage et la ressource de menu dans ce fichier. L’entrée de Registre elle-même se trouve sous HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<Version>\Menus, où< Version> est la version de Visual Studio, par exemple 9.0.

Remarque

Le chemin racine de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\<Version> peut être remplacé par une autre racine lorsque l’interpréteur de commandes Visual Studio est initialisé. Pour plus d’informations sur le chemin d’accès racine, consultez Installation de VSPackages avec Windows Installer.

Entrée du Registre de ressources CTMENU

La structure de l’entrée de Registre est la suivante :

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

<GUID> est le GUID VSPackage sous la forme {XXXXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXXXXXXX}.

<Les informations sur> les ressources se composent de trois éléments séparés par des virgules. Ces éléments sont, dans l’ordre :

<Chemin d’accès à la DLL> de ressource, <ID> de ressource de menu, <version du menu>

Le tableau suivant décrit les champs d’informations> sur <les ressources.

Élément Description
<Chemin d’accès à la DLL de ressource> Il s’agit du chemin complet de la DLL de ressource qui contient la ressource de menu ou il est laissé vide, indiquant que la DLL de ressource de VSPackage doit être utilisée (comme spécifié dans la sous-clé Packages où vsPackage lui-même est inscrit).

Il est habituel de laisser ce champ vide.
<ID de ressource de menu> Il s’agit de l’ID de ressource de la CTMENU ressource qui contient tous les éléments d’interface utilisateur du VSPackage compilés à partir d’un fichier .vsct .
<Menu Version> Il s’agit d’un nombre utilisé comme version pour la CTMENU ressource. Visual Studio utilise cette valeur pour déterminer s’il doit rémerger le contenu de la CTMENU ressource avec son cache de toutes les CTMENU ressources. Une rémerge est déclenchée en exécutant la commande de configuration devenv.

Cette valeur doit initialement être définie sur 1 et incrémentée après chaque modification de la CTMENU ressource et avant la rémerge.

Exemple

Voici un exemple de quelques entrées de ressources :

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