Ejecución de una aplicación instalada localmente en un entorno virtual con aplicaciones virtualizadas

Se aplica a: Application Virtualization 5.1

Puede ejecutar una aplicación instalada localmente en un entorno virtual, junto con las aplicaciones que se han virtualizado mediante Microsoft Application Virtualization (App-V). Es recomendable hacerlo si:

  • Desea instalar y ejecutar una aplicación localmente en equipos cliente, pero desea virtualizar y ejecutar complementos específicos que funcionan con la aplicación local.

  • Va a solucionar problemas de un paquete de cliente de App-V y desea abrir una aplicación local dentro del entorno virtual App-V.

Para abrir una aplicación local dentro del entorno virtual App-V, utilice cualquiera de los métodos siguientes:

  • Clave del Registro RunVirtual

  • Get-AppvClientPackage PowerShell cmdlet

  • Modificador de línea de comandos /appvpid:<pid>

  • Conmutador de conexión de línea de comandos /appvve:<GUID>

Cada método realiza esencialmente la misma tarea, pero algunos pueden ser más adecuados para ciertas aplicaciones que otros, según si ya se está ejecutando la aplicación virtualizada.

Clave del Registro RunVirtual

Para agregar una aplicación instalada localmente a un paquete o al entorno virtual de un grupo de conexiones, agregue una subclave a la clave del Registro de RunVirtual en el Editor del registro, como se describe en las secciones siguientes.

No hay ninguna opción de directiva de grupo disponible para administrar esta clave del Registro, por lo que deberá usar System Center Configuration Manager u otro sistema de distribución electrónica de software (ESD), o modificar manualmente el registro.

Métodos admitidos para publicar paquetes al usar RunVirtual

Versión de App-V Métodos de publicación admitidos

App-V 5.0 SP3 y App-V 5.1

Publicado globalmente o para el usuario

App-V 5.0 a través de App-V 5.0 SP2

Sólo publicado globalmente

Pasos para crear la subclave

  1. Con la información de la tabla siguiente, cree una nueva clave del Registro con el nombre del archivo ejecutable; por ejemplo, MyApp.exe.

    Método de publicación del paquete Dónde crear la clave del Registro

    Publicado globalmente

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual

    Ejemplo: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe

    Publicado para el usuario

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual

    Ejemplo: HKEY_CURRENT_USER \SOFTWARE\Microsoft\AppV\Client\RunVirtual\MyApp.exe

    El grupo de conexiones puede contener:

    • Paquetes publicados sólo globalmente o sólo para el usuario

    • Paquetes publicados globalmente y para el usuario

    La clave HKEY_LOCAL_MACHINE o la clave HKEY_CURRENT_USER, pero deben cumplirse todos los elementos siguientes:

    • Si desea incluir varios paquetes en el entorno virtual, deberá incluirlos en un grupo de conexiones habilitado.

    • Cree sólo una subclave para uno de los paquetes del grupo de conexiones. Si, por ejemplo, tiene un paquete publicado globalmente y otro publicado para el usuario, cree una subclave para cualquiera de estos paquetes, pero no ambos. Aunque cree una subclave sólo para uno de los paquetes, todos los paquetes del grupo de conexiones, además de la aplicación local, estarán disponibles en el entorno virtual.

    • La clave bajo la que crea la subclave debe coincidir con el método de publicación usado para el paquete.

      Por ejemplo, si publica el paquete para el usuario, deberá crear la subclave en HKEY_CURRENT_USER\SOFTWARE\Microsoft\AppV\Client\RunVirtual.

  2. Establezca el valor de la nueva subclave del registro en los valores PackageId y VersionId del paquete, separándolos con un carácter de subrayado.

    Sintaxis: <id de paquete>_<id. de versión>

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

    La aplicación del ejemplo anterior generaría un archivo de exportación del registro (archivo .reg) similar al siguiente:

    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
    

Get-AppvClientPackage PowerShell cmdlet

Puede utilizar el cmdlet Start-AppVVirtualProcess para recuperar el nombre del paquete y, a continuación, iniciar un proceso en el entorno virtual del paquete especificado. Este método le permite ejecutar cualquier comando en el contexto de un paquete de App-V, tanto si el paquete está en ejecución como si no.

Utilice la sintaxis del ejemplo siguiente y sustituya el nombre de su paquete en <Package>:

$AppVName = Get-AppvClientPackage <Package>

Start-AppvVirtualProcess -AppvClientObject $AppVName cmd.exe

Si no conoce el nombre exacto de su paquete, puede usar la línea de comandos Get-AppvClientPackage *executable*, donde executable es el nombre de la aplicación; por ejemplo: Get-AppvClientPackage *Word*.

Modificador de línea de comandos /appvpid:<pid>

Puede aplicar el modificador de línea de comandos /appvpid:<PID> a cualquier comando; esto permite al comando ejecutarse dentro de un proceso virtual que se selecciona especificando su identificador de proceso (PID). Con este método, el nuevo ejecutable se inicia en el mismo entorno de App-V que un archivo ejecutable que ya se esté ejecutando.

Ejemplo: cmd.exe /appvpid:8108

Para buscar el identificador de proceso (PID) del proceso de App-V, ejecute el comando tasklist.exe desde un símbolo del sistema con privilegios elevados.

Conmutador de conexión de línea de comandos /appvve:<GUID>

Este modificador le permite ejecutar un comando local dentro del entorno virtual de un paquete de App-V. A diferencia del modificador /appvid, donde el entorno virtual se debe estar ejecutando, este modificador le permite iniciar el entorno virtual.

Sintaxis: cmd.exe /appvve:<PACKAGEGUID_VERSIONGUID>

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

Para obtener el GUID del paquete y el GUID de la versión de la aplicación, ejecute el cmdlet Get-AppvClientPackage. Concatene el modificador /appvve con lo siguiente:

  • Dos puntos

  • GUID del paquete deseado

  • Un carácter de subrayado

  • Id. de versión del paquete deseado

Si no conoce el nombre exacto de su paquete, puede usar la línea de comandos Get-AppvClientPackage *executable*, donde executable es el nombre de la aplicación; por ejemplo: Get-AppvClientPackage *Word*.

Este método le permite ejecutar cualquier comando en el contexto de un paquete de App-V, tanto si el paquete está en ejecución como si no.

¿Tiene alguna sugerencia sobre App-V?

Agregue o vote sugerencias aquí. Para problemas de App-V, use el foro de TechNet de App-V.

Véase también

Otros recursos

Referencia técnica de App-V 5.1

-----
Puede obtener más información sobre MDOP en la Biblioteca de TechNet, mediante la búsqueda de información de solución de problemas en la sección TechNet Wiki, o a través de Facebook o Twitter.
-----