Choisissez le répertoire d’installation d’un VSPackageChoose the installation directory for a VSPackage

Un VSPackage et ses fichiers de prise en charge doivent être sur le système de fichiers d’un utilisateur.A VSPackage and its supporting files must be on a user's file system. L’emplacement varie selon que le VSPackage est géré ou non gérés, le schéma de contrôle de version côte à côte et de votre choix de l’utilisateur.The location depends on whether the VSPackage is managed or unmanaged, your side-by-side versioning scheme, and user choice.

VSPackages non managésUnmanaged VSPackages

Un VSPackage non managé est un serveur COM qui peut être installé dans n’importe quel emplacement.An unmanaged VSPackage is a COM server that can be installed in any location. Ses informations d’inscription doivent refléter précisément son emplacement.Its registration information must accurately reflect its location. Votre interface utilisateur de programme d’installation (IU) doit fournir un emplacement par défaut en tant que sous-répertoire de le ProgramFilesFolder valeur de propriété de programme d’installation de Windows.Your installer user interface (UI) should provide a default location as a subdirectory of the ProgramFilesFolder Windows Installer property value. Exemple :For example:

<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\

L’utilisateur doit être autorisé à modifier le répertoire par défaut pour les utilisateurs qui en assurent une partition de démarrage de petite et préférez installer les outils et applications sur un autre volume.The user should be allowed to change the default directory to accommodate users who keep a small boot partition and prefer to install applications and tools on another volume.

Si votre schéma côte à côte utilise un VSPackage avec contrôle de version, vous pouvez utiliser des sous-répertoires pour stocker différentes versions.If your side-by-side scheme uses a versioned VSPackage, you can use subdirectories to store different versions. Exemple :For example:

<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\2002\<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\2002\

<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\2003\<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\2003\

<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\2005\<ProgramFilesFolder>\<MyCompany>\<MyVSPackageProduct>\V1.0\2005\

VSPackages gérésManaged VSPackages

VSPackages gérés peuvent également être installés dans n’importe quel emplacement.Managed VSPackages can also be installed in any location. Toutefois, vous devez envisager de toujours les installer dans le global assembly cache (GAC) afin de réduire le temps de chargement d’assembly.However, you should consider always installing them to the global assembly cache (GAC) to reduce assembly load times. Étant donné que les VSPackages gérés sont toujours des assemblys avec nom fort, leur installation dans le GAC signifie que leur vérification de signature de nom fort prend uniquement au moment de l’installation.Because managed VSPackages are always strong-named assemblies, installing them in the GAC means that their strong-name signature verification takes only at installation time. Assemblys avec nom fort installés ailleurs dans le système de fichiers doivent avoir leurs signatures vérifiés chaque fois qu’ils sont chargés.Strong-named assemblies installed elsewhere in the file system must have their signatures verified every time they are loaded. Lorsque vous installez les VSPackages gérés dans le GAC, utilisez l’outil regpkg /assembly commutateur pour écrire des entrées de Registre qui pointe vers le nom fort de l’assembly.When you install managed VSPackages in the GAC, use the regpkg tool's /assembly switch to write registry entries pointing to the assembly's strong name.

Si vous installez les VSPackages gérés dans un emplacement autre que le GAC, suivez les conseils antérieures donnés pour les VSPackages non managés pour le choix des hiérarchies de répertoires.If you install managed VSPackages in a location other than the GAC, follow the earlier advice given for unmanaged VSPackages for choosing directory hierarchies. Utilisez l’outil regpkg /codebase commutateur pour écrire des entrées de Registre qui pointe vers le chemin d’accès de l’assembly VSPackage.Use the regpkg tool's /codebase switch to write registry entries pointing to the path of the VSPackage assembly.

Pour plus d’informations, consultez inscrire et désinscrire des VSPackages.For more information, see Register and unregister VSPackages.

DLL satellitesSatellite DLLs

Par convention, VSPackage DLL contenant des ressources pour les paramètres régionaux particuliers, satellites sont situés dans les sous-répertoires de la VSPackage directory.By convention, VSPackage satellite DLLs, which contain resources for a particular locale, are located in subdirectories of the VSPackage directory. Les sous-répertoires correspondent aux valeurs d’ID (LCID) de paramètres régionaux.The subdirectories correspond to locale ID (LCID) values.

Le gérer les VSPackages article indique que les entrées de Registre contrôlent où Visual StudioVisual Studio réellement la recherche d’un VSPackage satellites DLL.The Manage VSPackages article indicates that registry entries control where Visual StudioVisual Studio actually looks for a VSPackage's satellite DLL. Toutefois, Visual StudioVisual Studio essaie de charger une DLL satellite dans un sous-répertoire nommé pour une valeur LCID, dans l’ordre suivant :However, Visual StudioVisual Studio tries to load a satellite DLL in a subdirectory named for an LCID value, in the following order:

  1. Par défaut LCID (Visual Studio LCID ; par exemple, \1033 pour l’anglais)Default LCID (Visual Studio LCID; for example, \1033 for English)

  2. LCID par défaut avec la sous-langue par défaut.Default LCID with the default sublanguage.

  3. Par défaut du système LCID.System default LCID.

  4. Système LCID par défaut avec la sous-langue par défaut.System default LCID with the default sublanguage.

  5. ÉTATS-UNIS Anglais (. \1033 ou . \0x409).U.S. English (.\1033 or .\0x409).

Si votre DLL VSPackage inclut des ressources et le SatelliteDll\DllName entrée de Registre pointe vers elle, Visual StudioVisual Studio tente de les charger dans l’ordre indiqué ci-dessus.If your VSPackage DLL includes resources and the SatelliteDll\DllName registry entry points to it, Visual StudioVisual Studio attempts to load them in the above order.

Voir aussiSee also

Choisissez entre les VSPackages partagés et avec contrôle de version Choose between shared and versioned VSPackages
Gérer les packages VS Manage VSPackages
Gérer l’inscription du packageManage package registration