Exécution d'une application installée localement dans un environnement virtuel avec des applications virtualisées

Mis à jour: août 2015

S'applique à: Application Virtualization 5.1

Vous pouvez exécuter une application installée localement dans un environnement virtuel, parallèlement à des applications qui ont été virtualisées à l'aide de Microsoft Application Virtualization (App-V). Vous pouvez procéder de la sorte dans les cas suivants :

  • Vous voulez installer et exécuter une application localement sur des ordinateurs clients, mais vous voulez virtualiser et exécuter des plug-ins spécifiques qui fonctionnent avec cette application locale.

  • Vous êtes en train de résoudre un problème lié à un package du client App-V et vous voulez ouvrir une application locale au sein de l'environnement virtuel App-V.

Utilisez l'une des méthodes suivantes pour ouvrir une application locale dans l'environnement virtuel App-V :

  • Clé de Registre RunVirtual

  • Applet de commande PowerShell Get-AppvClientPackage

  • Commutateur de ligne de commande /appvpid:<PID>

  • Commutateur hook de ligne de commande /appvve:<GUID>

Chaque méthode effectue essentiellement la même tâche, mais certaines méthodes peuvent mieux convenir à certaines applications que d'autres, selon que l'application virtualisée est déjà en cours d'exécution ou non.

Clé de Registre RunVirtual

Pour ajouter une application installée localement à un package ou à l'environnement virtuel d'un groupe de connexion, vous ajoutez une sous-clé à la clé de Registre RunVirtual dans l'Éditeur du Registre, comme décrit dans les sections suivantes.

Il n'existe aucun paramètre Stratégie de groupe disponible pour gérer cette clé de Registre, donc vous devez utiliser System Center Configuration Manager ou un autre système de distribution de logiciels électronique (ESD), ou encore modifier manuellement le Registre.

Méthodes de publication des packages prises en charge lors de l'utilisation de RunVirtual

Version App-V Méthodes de publication prises en charge

App-V 5.0 SP3 et App-V 5.1

Publication globale ou sur l'utilisateur

App-V 5.0 à App-V 5.0 SP2

Publication globale uniquement

Étapes pour créer la sous-clé

  1. À l'aide des informations indiquées dans le tableau suivant, créez une clé de Registre en utilisant le nom du fichier exécutable, par exemple, MonAppli.exe.

    Méthode de publication de package Où créer la clé de Registre

    Publication globale

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual

    Exemple : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual\MonAppli.exe

    Publication sur l'utilisateur

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual

    Exemple : HKEY_CURRENT_USER \SOFTWARE\Microsoft\AppV\Client\RunVirtual\MonAppli.exe

    Un groupe de connexion peut contenir ce qui suit :

    • Packages publiées globalement uniquement ou sur l'utilisateur uniquement

    • Packages publiés globalement et sur l'utilisateur

    Clé HKEY_LOCAL_MACHINE ou HKEY_CURRENT_USER, mais toutes les conditions suivantes doivent être remplies :

    • Pour inclure plusieurs packages dans l'environnement virtuel, vous devez les inclure dans un groupe de connexion activé.

    • Créez une seule sous-clé pour l'un des packages dans le groupe de connexion. Si, par exemple, vous avez un seul package publié globalement et un autre package publié sur l'utilisateur, vous créez une sous-clé pour l'un de ces packages, mais pas pour les deux. Même si vous créez une sous-clé pour un seul des packages, tous les packages inclus dans le groupe de connexion, ainsi que l'application locale, sont disponibles dans l'environnement virtuel.

    • La clé sous laquelle vous créez la sous-clé doit correspondre à la méthode de publication utilisée pour le package.

      Par exemple, si vous avez publié le package sur l'utilisateur, vous devez créer la sous-clé sous HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual.

  2. Définissez la valeur de la nouvelle sous-clé de Registre conformément aux valeurs PackageId et VersionId du package, en les séparant par un trait de soulignement.

    Syntaxe : <ID du package>_<ID de version>

    Exemple : 4c909996-afc9-4352-b606-0b74542a09c1_be463724-Oct1-48f1-8604-c4bd7ca92fa

    L'application de l'exemple précédent produit un fichier d'exportation du Registre (fichier .reg) comme le suivant :

    Windows Registry Editor Version 5.00 
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual] 
    
    @="" 
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe] 
    
    @="aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-555555555
    

Applet de commande PowerShell Get-AppvClientPackage

Vous pouvez utiliser l'applet de commande Start-AppVVirtualProcess pour récupérer le nom du package, puis démarrer un processus dans l'environnement virtuel du package spécifié. Cette méthode vous permet de lancer une commande dans le contexte d'un package App-V, que le package soit actuellement en cours d'exécution ou non.

Utilisez l'exemple de syntaxe suivant et remplacez <Package> par le nom de votre package :

$AppVName = Get-AppvClientPackage <Package>

Start-AppvVirtualProcess -AppvClientObject $AppVName cmd.exe

Si vous ne connaissez pas le nom exact de votre package, vous pouvez utiliser la ligne de commande Get-AppvClientPackage *executable*, où executable est le nom de l'application, par exemple : Get-AppvClientPackage *Word*.

Commutateur de ligne de commande /appvpid:<PID>

Vous pouvez appliquer le commutateur /appvpid:<PID> à une commande, lequel permet à cette commande de s'exécuter dans un processus virtuel que vous sélectionnez en spécifiant son ID de processus (PID). L'utilisation de cette méthode permet de lancer le nouveau fichier exécutable dans le même environnement App-V que celui dans lequel un fichier exécutable est déjà en cours d'exécution.

Exemple : cmd.exe /appvpid:8108

Pour trouver l'ID de processus (PID) de votre processus App-V, exécutez la commande tasklist.exe à partir d'une invite de commandes avec élévation de privilèges.

Commutateur hook de ligne de commande /appvve:<GUID>

Ce commutateur permet d'exécuter une commande locale au sein de l'environnement virtuel d'un package App-V. Contrairement au commutateur /appvid, où l'environnement virtuel doit déjà être en cours d'exécution, ce commutateur vous permet de démarrer l'environnement virtuel.

Syntaxe : cmd.exe /appvve:<PACKAGEGUID_VERSIONGUID>

Exemple : cmd.exe /appvve:aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-55555555

Pour obtenir le GUID du package et le GUID de la version de votre application, exécutez l'applet de commande Get-AppvClientPackage. Concaténez le commutateur /appvve avec les éléments suivants :

  • Un signe deux-points

  • Le GUID du package souhaité

  • Un trait de soulignement

  • L'ID de la version du package souhaité

Si vous ne connaissez pas le nom exact de votre package, utilisez la ligne de commande Get-AppvClientPackage *executable*, où executable est le nom de l'application, par exemple : Get-AppvClientPackage *Word*.

Cette méthode vous permet de lancer une commande dans le contexte d'un package App-V, que le package soit actuellement en cours d'exécution ou non.

Vous avez une suggestion pour App-V ?

Ajoutez des suggestions ou votez pour les meilleures ici. Pour les problèmes relatifs à App-V, utilisez le Forum TechNet App-V.

Voir aussi

Autres ressources

Référence technique pour App-V 5.1

-----
Vous pouvez en apprendre plus sur MDOP dans Bibliothèque TechNet, rechercher des solutions à des problèmes dans le TechNet Wiki ou nous suivre sur Facebook ou Twitter.
-----