Publicación de aplicaciones e interacción de clientes

Se aplica a: Application Virtualization 5.1

En este artículo se proporciona información técnica sobre las operaciones más habituales del cliente de App-V y su integración con el sistema operativo local.

  • Archivos de paquete de App-V creados por el secuenciador

  • ¿Qué contiene el archivo appv?

  • Ubicaciones de almacenamiento de datos del cliente de App-V

  • Registro del paquete

  • Comportamiento del almacén de paquetes de App-V

  • Movilidad de datos y Registro

  • Administración de ciclo de vida de aplicaciones de cliente de App-V

  • Integración de paquetes de App-V

  • Procesamiento de configuración dinámica

  • Ensamblados en paralelo

  • Registro del cliente

Para obtener más información de referencia, vea Página de descarga de recursos de documentación de Microsoft Application Virtualization (App-V).

Archivos de paquete de App-V creados por el secuenciador

El secuenciador crea paquetes de App-V y genera una aplicación virtualizada. El proceso de secuenciación crea los siguientes archivos:

Archivo Descripción

.appv

  • Archivo de paquete principal, que contiene la información de estado del proceso de secuenciación y los activos capturados.

  • Arquitectura del archivo de paquete, información de publicación y Registro en forma de tokens que se pueden volver a aplicar a un equipo y a un usuario específico en la entrega.

.MSI

Contenedor de implementación ejecutable que puede usar para implementar archivos .appv manualmente o mediante una plataforma de implementación de terceros.

_DeploymentConfig.XML

Archivo usado para personalizar los parámetros predeterminados de publicación para todas las aplicaciones de un paquete que se implementa de forma global para todos los usuarios en un equipo en el que se ejecute el cliente de App-V.

_UserConfig.XML

Archivo usado para personalizar los parámetros de publicación para todas las aplicaciones de un paquete que se implementa para un usuario específico en un equipo en el que se ejecute el cliente de App-V.

Report.xml

Resumen de mensajes como resultado del proceso de secuenciación, incluidos los controladores, los archivos y las ubicaciones del Registro que se hayan omitido.

.CAB

Opcional: Archivo de acelerador de paquetes que sirve para volver generar automáticamente un paquete de aplicación virtual previamente secuenciado.

.appvt

Opcional: Archivo de plantilla de secuenciador que sirve para conservar configuraciones de secuenciador que se reutilizan con frecuencia.

Para obtener información sobre secuenciación, vea la Guía de secuenciación de Application Virtualization.

¿Qué contiene el archivo appv?

El archivo appv es un contenedor que almacena los archivos XML y no XML conjuntamente en una única entidad. Este archivo se compila a partir del formato AppX, que se basa en el estándar Open Packaging Conventions (OPC).

Para ver el contenido del archivo appv, haga una copia del paquete y, a continuación, cambie el nombre del archivo copiado a una extensión .zip.

El archivo appv contiene la carpeta y los archivos siguientes, que se usan al crear y publicar una aplicación virtual:

Nombre Tipo Descripción

Raíz

Carpeta de archivos

Directorio que contiene el sistema de archivos para la aplicación virtualizada capturada durante la secuenciación.

[Content_Types].xml

Archivo XML

Lista de los principales tipos de contenido del archivo appv (por ejemplo, DLL, EXE, BIN)

AppxBlockMap.xml

Archivo XML

Diseño del archivo appv, que usa elementos File, Block y BlockMap, que permiten la ubicación y validación de los archivos en el paquete de App-V.

AppxManifest.xml

Archivo XML

Metadatos del paquete que contienen la información necesaria para agregar, publicar e iniciar el paquete. Incluye los puntos de extensión (accesos directos y asociaciones de tipo de archivo), así como los nombres y los GUID asociados al paquete.

FilesystemMetadata.xml

Archivo XML

Lista de los archivos capturados durante la secuenciación, incluidos los atributos (por ejemplo, directorios, archivos, directorios opacos, directorios vacíos y nombres largos y cortos).

PackageHistory.xml

Archivo XML

Información sobre el equipo de secuenciación (versión del sistema operativo, versión de Internet Explorer, versión de .NET Framework) y el proceso (actualización, versión del paquete).

Registry.dat

Archivo DAT

Valores y claves del Registro que se capturaron durante el proceso de secuenciación del paquete.

StreamMap.xml

Archivo XML

Lista de archivos para el bloque de características principal y de publicación. El bloque de características de publicación contiene los archivos ICO y partes necesarias de archivos (EXE y DLL) para publicar el paquete. Cuando está presente, el bloque de características principal incluye archivos optimizados para streaming durante el proceso de secuenciación.

Ubicaciones de almacenamiento de datos del cliente de App-V

El cliente de App-V realiza tareas para garantizar que las aplicaciones virtuales se ejecuten correctamente y funcionen como las aplicaciones instaladas localmente. Para el proceso de abrir y ejecutar aplicaciones virtuales es necesario realizar la asignación desde el Registro y el sistema de archivos virtuales, para garantizar que la aplicación tenga los componentes necesarios de una aplicación tradicional, tal y como la esperan los usuarios. En esta sección se describen los recursos necesarios para ejecutar aplicaciones virtuales y muestra la ubicación donde App-V almacena los recursos.

Nombre Ubicación Descripción

Almacén de paquetes

%ProgramData%\App-V

Ubicación predeterminada para los archivos de paquetes de sólo lectura

Catálogo de equipo

%ProgramData%\Microsoft\AppV\Client\Catalog

Contiene documentos de configuración por equipo

Catálogo de usuario

%AppData%\Microsoft\AppV\Client\Catalog

Contiene documentos de configuración por usuario

Copias de seguridad de accesos directos

%AppData%\Microsoft\AppV\Client\Integration\ShortCutBackups

Almacena puntos anteriores de integración que permiten la restauración al anular la publicación de un paquete

Copiar en escritura (COW, Copy on Write) móvil

%AppData%\Microsoft\AppV\Client\VFS

Ubicación móvil que se puede escribir para la modificación de paquetes

Copiar en escritura (COW, Copy on Write) local

%LocalAppData%\Microsoft\AppV\Client\VFS

Ubicación no móvil que se puede escribir para la modificación de paquetes

Registro de equipo

HKLM\Software\Microsoft\AppV

Contiene información de estado del paquete, incluido VReg, para paquetes publicados globalmente (subárbol de equipos) o en un equipo

Registro de usuario

HKCU\Software\Microsoft\AppV

Contiene información de estado de paquetes de usuario, incluido VReg

Clases del Registro del usuario

HKCU\Software\Classes\AppV

Contiene información de estado adicional del paquete de usuario

En la sección siguiente y en todo el documento se ofrecen detalles adicionales de la tabla.

Almacén de paquetes

El cliente de App-V administra los activos de las aplicaciones montados en el almacén de paquetes. Esta ubicación de almacenamiento predeterminada es %ProgramData%\App-V, pero se puede configurar durante o después de la instalación mediante el comando Set-AppVClientConfiguration de PowerShell, que modifica el Registro local (valor PackageInstallationRoot en la clave HKLM\Software\Microsoft\AppV\Client\Streaming). El almacén de paquetes debe estar ubicado en una ruta de acceso local en el sistema operativo cliente. Los paquetes individuales se guardan en el almacén de paquetes, en subdirectorios nombrados según el GUID del paquete y el GUID de la versión.

Ejemplo de una ruta de acceso a una aplicación específica:

C:\ProgramData\App-V\PackGUID\VersionGUID 

Para cambiar la ubicación predeterminada del almacén de paquetes durante la instalación, vea Cómo implementar el cliente de App-V.

Almacén de contenido compartido

Si el cliente de App-V está configurado en modo de almacén de contenido compartido, no se escriben datos en el disco cuando se produce un error de streaming, lo que significa que los paquetes requieren un espacio mínimo en el disco local (publicación de datos). El uso de menos espacio en disco es muy conveniente en entornos de VDI, donde el almacenamiento local puede ser limitado y es preferible transmitir las aplicaciones desde una ubicación de red de alto rendimiento (por ejemplo, una SAN). Para obtener más información sobre el modo de almacén de contenido compartido, vea https://go.microsoft.com/fwlink/p/?LinkId=392750.

Nota

El equipo y el almacén de paquetes deben encontrarse en una unidad local, aunque se usen configuraciones de Almacén de contenido compartido para el cliente de App-V.

Catálogos de paquetes

El cliente de App-V administra las siguientes dos ubicaciones basadas en archivos:

  • Catálogos (de usuario y de equipo).

  • Ubicaciones del Registro: varía en función de cómo se dirija el paquete para la publicación. Hay un catálogo (almacén de datos) para el equipo y un catálogo para cada usuario individual. El catálogo de equipo almacena información global aplicable a todos los usuarios o a cualquier usuario, y el catálogo de usuario almacena información aplicable a un usuario específico. El catálogo es una colección de configuraciones dinámicas y archivos de manifiesto; hay datos discretos tanto de archivo como de Registro, por cada versión del paquete. 

Catálogo de equipo

Descripción

Almacena documentos de paquete disponibles para los usuarios del equipo, cuando se agregan y se publican paquetes. Sin embargo, si un paquete es "global" en el momento de la publicación, las integraciones están disponibles para todos los usuarios.

Si un paquete es no global, solo se publican las integraciones para usuarios específicos, pero sigue habiendo recursos globales modificados y visibles para cualquier usuario del equipo cliente (por ejemplo, el directorio del paquete se encuentra en una ubicación de disco compartida).

Si un paquete está disponible para un usuario del equipo (global o no global), el manifiesto se almacena en el catálogo del equipo. Cuando un paquete se publica globalmente, hay un archivo de configuración dinámica, almacenado en el catálogo de equipo; por lo tanto, la determinación de si un paquete es global se define en función de que haya un archivo de directiva (archivo UserDeploymentConfiguration) en el catálogo del equipo.

Ubicación de almacenamiento predeterminada

%programdata%\Microsoft\AppV\Client\Catalog\

Esta ubicación no es la misma que la ubicación del almacén de paquetes. El almacén de paquetes es la copia perfecta de los archivos del paquete.

Archivos en el catálogo de la máquina

  • Manifest.xml

  • DeploymentConfiguration.xml

  • UserManifest.xml (paquete publicado globalmente)

  • UserDeploymentConfiguration.xml (paquete publicado globalmente)

Ubicación del catálogo de la máquina adicional, usada cuando el paquete forma parte de un grupo de conexiones

La siguiente ubicación corresponde, además de a la ubicación del paquete específico mencionada anteriormente, a lo siguiente:

%programdata%\Microsoft\AppV\Client\Catalog\PackageGroups\ConGroupGUID\ConGroupVerGUID

Archivos adicionales en el catálogo de la máquina cuando el paquete forma parte de un grupo de conexiones

  • PackageGroupDescriptor.xml

  • UserPackageGroupDescriptor.xml (grupo de conexiones publicado globalmente)

Catálogo de usuario

Descripción

Se crea durante el proceso de publicación. Contiene información usada para publicar el paquete, y también se usa al inicio para garantizar que el paquete se haya aprovisionado para un usuario específico. Se crea en una ubicación de itinerancia e incluye información de publicación específica del usuario.

Cuando se publica un paquete para un usuario, el archivo de directiva se almacena en el catálogo de usuario. Al mismo tiempo, también se almacena una copia del manifiesto en el catálogo de usuario. Cuando se quita una autorización de paquete a un usuario, se quitan del catálogo de usuario los archivos pertinentes del paquete. Al examinar el catálogo de usuario, un administrador puede ver que contiene un archivo de configuración dinámica, lo que indica que el paquete está autorizado para ese usuario.

Para usuarios móviles, el catálogo de usuario debe estar en una ubicación compartida o móvil para conservar el comportamiento heredado de App-V de dirigirse a los usuarios de forma predeterminada. Las autorizaciones y las directivas están vinculadas a un usuario, no a un equipo; por lo tanto, una vez aprovisionadas deben moverse con el usuario.

Ubicación de almacenamiento predeterminada

ppdata\roaming\Microsoft\AppV\Client\Catalog\Packages\PkgGUID\VerGUID

Archivos en el catálogo de usuario

  • UserManifest.xml

  • DynamicConfiguration.xml o UserDeploymentConfiguration.xml

Ubicación del catálogo de usuario adicional, usada cuando el paquete forma parte de un grupo de conexiones

La siguiente ubicación corresponde, además de a la ubicación del paquete específico mencionada anteriormente, a lo siguiente:

appdata\roaming\Microsoft\AppV\Client\Catalog\PackageGroups\PkgGroupGUID\PkgGroupVerGUID

Archivo adicional del catálogo de la máquina, usado cuando el paquete forma parte de un grupo de conexiones

UserPackageGroupDescriptor.xml

Copias de seguridad de accesos directos

Durante el proceso de publicación, el cliente de App-V realiza una copia de seguridad de los accesos directos y los puntos de integración en %AppData%\Microsoft\AppV\Client\Integration\ShortCutBackups.. Esta copia de seguridad permite la restauración de los puntos de integración a las versiones anteriores cuando se anule la publicación del paquete.

Archivos Copiar en escritura

El almacén de paquetes contiene una copia perfecta de los archivos de paquete que se han transmitido por secuencias desde el servidor de publicación. Durante el funcionamiento normal de una aplicación de App-V, es posible que el usuario o servicio necesite realizar cambios en los archivos. Dichos cambios no se realizan en el almacén de paquetes para garantizar que el usuario pueda reparar la aplicación, caso en que los cambios se descartarían. Estas ubicaciones, llamadas Copiar en escritura (COW, Copy on Write) admiten tanto ubicaciones móviles como no móviles. La ubicación en la que se almacenan las modificaciones depende de dónde se programó la aplicación para escribir los cambios en una experiencia nativa.

Movilidad COW

La ubicación de movilidad COW que se describe anteriormente almacena los cambios en archivos y directorios que están destinados a la ubicación típica %AppData% o a la ubicación \Users\{nombreUsuario}\AppData\Roaming. Estos archivos y directorios se traspasan luego en función de la configuración del sistema operativo.

COW local

La ubicación COW local es similar a la ubicación móvil, pero los directorios y archivos no se traspasan a otros equipos, aunque se haya configurado la compatibilidad con movilidad. La ubicación COW local descrita anteriormente almacena los cambios aplicables en ubicaciones típicas de Windows y no en la ubicación %AppData%. Los directorios enumerados varían, pero habrá dos ubicaciones para cualquier ubicación típica de Windows (por ejemplo, Common AppData y Common AppDataS). La letra S indica la ubicación restringida cuando el servicio virtual solicita el cambio como un usuario con privilegios elevados diferente de los usuarios conectados. La ubicación sin la letra oS almacena los cambios de usuario.

Registro del paquete

Antes de que una aplicación pueda tener acceso a los datos del Registro del paquete, el cliente de App-V debe poner los datos a disposición de las aplicaciones. El cliente de App-V usa el Registro real como almacén de respaldo para todos los datos del Registro.

Cuando se agrega un nuevo paquete al cliente de App-V, se crea una copia del archivo REGISTRY.DAT del paquete en %ProgramData%\Microsoft\AppV\Client\VREG\{Version GUID}.dat. El nombre del archivo es el GUID de la versión con la extensión .DAT. El motivo por el que esta copia se realiza es asegurarse de que el archivo de subárbol en el paquete nunca está en uso, lo que podría impedir la eliminación del paquete más adelante.

Registry.dat del almacén de paquetes

 > 

%ProgramData%\Microsoft\AppV\Client\Vreg\{GUIDVersión}.dat

Cuando se inicia en el cliente la primera aplicación del paquete, el cliente almacena provisionalmente o copia el contenido del archivo de subárbol, volviendo a crear los datos del Registro del paquete en una ubicación alternativa HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppV\Client\Packages\PackageGuid\Versions\VersionGuid\REGISTRY. Los datos del Registro almacenados provisionalmente son de dos tipos distintos: de equipo y de usuario. Los datos de equipo se comparten entre todos los usuarios del equipo. Los datos de usuario se almacenan provisionalmente para cada usuario en una ubicación específica HKCU\Software\Microsoft\AppV\Client\Packages\PackageGuid\Registry\User. Los datos del equipo se eliminan en el momento de la eliminación de paquete, y los de usuario se eliminan durante una operación de anular publicación de usuario.

Almacenamiento provisional del Registro del paquete frente a almacenamiento provisional del Registro del grupo de conexiones

Cuando existen grupos de conexiones, el anterior proceso de almacenamiento provisional del Registro sigue siendo válido, pero en lugar de tener un archivo de subárbol para procesar, hay más de uno. Los archivos se procesan en el orden en que aparecen en el archivo XML del grupo de conexiones; el primer escritor se impone en los conflictos.

El Registro almacenado provisionalmente se conserva, igual que en el caso de paquete único. Los datos del Registro del usuario almacenados provisionalmente se conservan para el grupo de conexiones hasta que éste se deshabilita; los datos del Registro del equipo usuario almacenados provisionalmente se eliminan al eliminar el grupo de conexiones.

Registro virtual

El propósito del Registro virtual (VREG) es ofrecer a las aplicaciones una única vista combinada del Registro de paquete y del Registro nativo. También ofrece funcionalidad Copiar en escritura (COW, Copy on write), esto es, los cambios efectuados en el Registro desde el contexto de un proceso virtual se llevan a cabo en una ubicación COW independiente. Esto significa que el VREG debe combinar hasta tres ubicaciones de Registro independientes en una sola vista según las ubicaciones rellenadas en el Registro, COW -> paquete -> nativo. Cuando se realiza una solicitud de datos del Registro, se hará una búsqueda en orden hasta que se encuentren los datos que se solicitan. Es decir, si hay un valor almacenado en una ubicación COW, la búsqueda no continuará a otras ubicaciones; sin embargo, si no hay ningún dato en la ubicación COW, continuará a las ubicaciones Paquete y, a continuación, Nativa hasta que se encuentren los datos apropiados.

Ubicaciones del Registro

Hay dos ubicaciones del Registro de paquete y dos ubicaciones de grupo de conexiones en las que el cliente de App-V almacena información del Registro, según si el paquete se publica individualmente o como parte de un grupo de conexiones. Hay tres ubicaciones COW para paquetes y tres para grupos de conexiones, que se crean y administran mediante el VREG. La configuración de paquetes y grupos de conexiones no se comparte:

VReg de paquete único:

Ubicación

Descripción

COW

  • Machine Registry\Client\Packages\PkgGUID\REGISTRY (sólo puede escribir un proceso con privilegios elevados)

  • User Registry\Client\Packages\PkgGUID\REGISTRY (traspaso de todo lo escrito bajo HKCU salvo Software\Classes)

  • User Registry Classes\Client\Packages\PkgGUID\REGISTRY (escrituras de HKCU\Software\Classes y HKLM para procesos sin privilegios elevados)

Paquete

  • Machine Registry\Client\Packages\PkgGUID\Versions\VerGuid\Registry\Machine

  • User Registry Classes\Client\Packages\PkgGUID\Versions\VerGUID\Registry

Nativo

  • Ubicación del Registro de aplicación nativa

 

VReg de grupo de conexiones:

Ubicación

Descripción

COW

  • Machine Registry\Client\PackageGroups\GrpGUID\REGISTRY (sólo puede escribir un proceso con privilegios elevados)

  • User Registry\Client\PackageGroups\GrpGUID\REGISTRY (todo lo escrito en HKCU salvo Software\Classes)

  • User Registry Classes\Client\PackageGroups\GrpGUID\REGISTRY

Paquete

  • Machine Registry\Client\PackageGroups\GrpGUID\Versions\VerGUID\REGISTRY

  • User Registry Classes\Client\PackageGroups\GrpGUID\Versions\VerGUID\REGISTRY

Nativo

  1. Ubicación del Registro de aplicación nativa

 

Hay dos ubicaciones COW para HKLM; procesos con privilegios elevados y sin privilegios elevados. Los procesos con privilegios siempre escriben los cambios de HKLM en la ubicación COW segura en HKLM. Los procesos sin privilegios elevados escriben siempre los cambios de HKLM en la ubicación COW no segura, bajo HKCU\Software\Classes. Cuando una aplicación lee los cambios de HKLM, los procesos con privilegios elevados leerán los cambios de la ubicación COW segura en HKLM. Los procesos con privilegios no elevados leen de ambas ubicaciones, y priorizan los cambios realizados la ubicación COW no segura.

Claves de paso a través

Las claves de paso a través permiten a los administradores configurar ciertas claves para que sólo se puedan leer desde el Registro nativo, omitiendo las ubicaciones de Paquete y COW. Las ubicaciones de paso a través son globales para el equipo (no específicas del paquete) y se pueden configurar mediante la adición de la ruta de acceso a la clave, que debe tratarse como de paso al valor de REG_MULTI_SZ denominado PassThroughPaths de la clave HKLM\Software\Microsoft\AppV\Subsystem\VirtualRegistry. Cualquier clave que aparezca dentro de este valor de cadena múltiple (y sus elementos secundarios) se tratará como de paso a través.

Las siguientes ubicaciones se configuran de forma predeterminada como ubicaciones de paso a través:

  • HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel

  • HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WMI\Autologger

  • HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib

  • HKEY_LOCAL_MACHINE\SOFTWARE\Policies

  • HKEY_CURRENT_USER\SOFTWARE\Policies

La finalidad de las claves de paso a través es garantizar que una aplicación virtual no escriba datos del Registro en el VReg necesario para el funcionamiento e integración correctos de las aplicaciones no virtuales. La clave Policies (directivas) garantiza que se utilicen opciones de configuración basadas en directivas de grupo establecidas por el administrador y no opciones de paquete. La clave AppModel es necesaria para la integración con aplicaciones Windows de interfaz de usuario moderna. Es recomendable que los administradores no modifiquen ninguna de las claves de paso a través predeterminadas, pero en algunos casos, según el comportamiento de la aplicación, es posible que se deban agregar claves de paso a través adicionales.

Comportamiento del almacén de paquetes de App-V

App-V 5 administra el almacén de paquetes, que es la ubicación donde se almacenan los archivos de activos expandidos del archivo appv. De forma predeterminada, esta ubicación se almacena en %ProgramData%\App-V y, en términos de capacidad de almacenamiento, sólo está limitada por el espacio libre en disco. El almacén de paquetes está organizado según los GUID de paquete y versión, como se indica en la sección anterior.

Agregar paquetes

Los paquetes de App-V se almacenan provisionalmente en el momento de agregarlos al equipo con el cliente de App-V. El cliente de App-V proporciona almacenamiento provisional a petición. Durante la publicación o un Add-AppVClientPackage manual, se crea la estructura de datos en el almacén de paquetes (c:\programdata\App-V\{PkgGUID}\{VerGUID}). Los archivos de paquete identificados en el bloque de publicación definido en el archivo StreamMap.xml se agregan al sistema, así como el nivel superior de carpetas y archivos secundarios almacenados provisionalmente, para asegurarse que en el momento del inicio la aplicación dispone de los activos adecuados.

Montaje de paquetes

Los paquetes se pueden cargar explícitamente mediante Mount-AppVClientPackage de PowerShell, o utilizando la IU del cliente de App-V para descargar un paquete. Esta operación carga el paquete entero en el almacén de paquetes.

Paquetes de streaming

El cliente de App-V puede configurarse para cambiar el comportamiento predeterminado de streaming. Todas las directivas de streaming se almacenan en la siguiente clave del Registro: HKEY_LOCAL_MAcHINE\Software\Microsoft\AppV\Client\Streaming. Las directivas se establecen mediante el cmdlet de PowerShell Set-AppvClientConfiguration. Las siguientes directivas se aplican al streaming:

Directiva Descripción

AllowHighCostLaunch

En Windows 8 se permite hacer streaming por redes 3G y móviles

AutoLoad

Especifica la configuración de la carga en segundo plano:

  • 0: deshabilitada

  • 1: sólo paquetes usados anteriormente

  • 2: todos los paquetes

PackageInstallationRoot

La carpeta raíz para el almacén de paquetes en el equipo local

PackageSourceRoot

La raíz invalidada desde donde se deben transmitir los paquetes

SharedContentStoreMode

Habilita el uso del almacén de contenido compartido para escenarios VDI

 

Esta configuración afecta al comportamiento de la transmisión de activos del paquete de App-V al cliente. De forma predeterminada, App-V sólo descarga los activos necesarios después de descargar la publicación inicial y los bloques de características principales. Hay tres comportamientos específicos relacionados con el streaming de paquetes que deben explicarse:

  • Streaming en segundo plano

  • Streaming optimizado

  • Ausencias de secuencia

Streaming en segundo plano

El cmdlet de PowerShell Get-AppvClientConfiguration se puede utilizar para determinar el modo actual de streaming en segundo plano mediante la opción AutoLoad (carga automática), y se puede modificar con el cmdlet Set-AppvClientConfiguration o desde el Registro (clave HKLM\SOFTWARE\Microsoft\AppV\ClientStreaming). El streaming en segundo plano es la opción predeterminada cuando el valor de Autoload se establece en descargar paquetes utilizados anteriormente. El comportamiento en función de la configuración predeterminada (valor = 1) descarga bloques de datos de App-V en segundo plano después iniciar la aplicación. Esta configuración puede deshabilitarse por completo (valor = 0) o habilitarse para todos los paquetes (valor = 2), se hayan o no iniciado.

Streaming optimizado

Los paquetes de App-V pueden configurarse con un bloque inicial de características durante la secuenciación. Esta opción de configuración permite al ingeniero de secuenciación supervisar los archivos de inicio para una aplicación o aplicaciones específicas, y marcar los bloques de datos del paquete de App-V para su streaming en el primer inicio de cualquiera de las aplicaciones del paquete.

Ausencias de secuencia

Después de la secuencia inicial de cualquier dato de publicación y del bloque inicial de características, las solicitudes de archivos adicionales sufren ausencias de secuencia. Estos bloques de datos se descargan al almacén de paquetes según sea necesario. Esto permite al usuario descargar sólo una pequeña parte del paquete, normalmente lo suficiente para iniciar el paquete y ejecutar tareas normales. Los demás bloques se descargan cuando un usuario inicia una operación que requiere datos que no se encuentran en el almacén de paquetes.

Para obtener más información sobre el streaming de paquetes de App-V, visite: https://go.microsoft.com/fwlink/?LinkId=392770.

La secuenciación para optimizar la transmisión está disponible en: https://go.microsoft.com/fwlink/?LinkId=392771.

Actualizaciones de paquetes

Los paquetes de App-V precisan ser actualizados a lo largo del ciclo de vida de la aplicación. Las actualizaciones de paquetes de App-V son similares a las operaciones de publicar paquetes, ya que cada versión se crea en su propia ubicación PackageRoot: %ProgramData%\App-V\{PkgGUID}\{newVerGUID}. La operación de actualización se optimiza mediante la creación de vínculos físicos a archivos idénticos y transmitidos de otras versiones del mismo paquete.

Eliminación de paquetes

El comportamiento del cliente de App-V cuando se eliminan paquetes depende del método utilizado para la eliminación. Utilizando una infraestructura completa de App-V para anular la publicación de la aplicación, los archivos de catálogo de usuario (catálogo de equipo para las aplicaciones publicadas globalmente) se eliminan, pero se conservan la ubicación del almacén de paquetes y las ubicaciones COW. Cuando se utiliza el cmdlet de PowerShell Remove-AppVClientPackge para eliminar un paquete de App-V, se limpia la ubicación del almacén de paquetes. Recuerde que anular la publicación de un paquete de App-V desde el servidor de administración no realiza una operación de eliminación. Ninguna de ambas operaciones eliminará los archivos de paquete del almacén de paquetes.

Movilidad de datos y Registro

App-V 5 es capaz de proporcionar una experiencia casi nativa durante la movilidad, en función de cómo se escribe la aplicación que se está usando. De forma predeterminada, App-V traspasa el directorio AppData almacenado en la ubicación móvil, según la configuración móvil del sistema operativo. Otras ubicaciones de almacenamiento de datos basado en archivos no se traspasan de un equipo a otro, ya que se encuentran en ubicaciones que no se traspasan.

Requisitos de movilidad y almacenamiento de datos del catálogo de usuarios

App-V almacena datos, que representan el estado del catálogo del usuario, en forma de:

  • Archivos de %appdata%\Microsoft\AppV\Client\Catalog

  • Configuración del Registro en HKEY_CURRENT_USER\Software\Microsoft\AppV\Client\Packages

Juntos, estos archivos y opciones de configuración del Registro representan el catálogo del usuario, por lo tanto, para un usuario determinado, ambos o ninguno de ellos deben traspasarse. App-V no admite traspasar %AppData%, pero no el perfil (Registro) del usuario, o viceversa.

Nota

El cmdlet Repair-AppvClientPackage no repara el estado de publicación de paquetes, donde el estado de App-V del usuario en HKEY_CURRENT_USER falta o no coincide con los datos en %appdata%.

Datos del Registro

La movilidad del Registro de App-V corresponde a los dos escenarios que se muestran en la tabla siguiente.

Escenario Descripción

Aplicaciones que se ejecutan como usuarios estándar

Cuando un usuario estándar inicia una aplicación de App-V, HKLM y HKCU para aplicaciones de App-V se almacenan en el subárbol HKCU del equipo. Este se presenta en la forma de dos rutas de acceso distintas:

  • HKLM: HKCU\SOFTWARE\Classes\AppV\Client\Packages\{PkgGUID}\REGISTRY\MACHINE\SOFTWARE

  • HKCU: HKCU\SOFTWARE\Microsoft\AppV\Client\Packages\{PkgGUID}\REGISTRY\USER\{UserSID}\SOFTWARE

Las ubicaciones están habilitadas para la movilidad en función de la configuración del sistema operativo.

Aplicaciones que se ejecutan con privilegios elevados

Cuando una aplicación se inicia con privilegios elevados:

  • Los datos HKLM se almacenan en el subárbol HKLM del equipo local

  • Los datos HKCU se almacenan en la ubicación del Registro de usuario

En este escenario, esta configuración no se traspasa con configuraciones normales de movilidad del sistema operativo y las claves y los valores resultantes se almacenan en la siguiente ubicación:

  • HKLM\SOFTWARE\Microsoft\AppV\Client\Packages\{PkgGUID}\{UserSID}\REGISTRY\MACHINE\SOFTWARE

  • HKCU\SOFTWARE\Microsoft\AppV\Client\Packages\{PkgGUID}\Registry\User\{UserSID}\SOFTWARE

App-V y redirección de carpetas

App-V 5.1 admite la redirección de la carpeta AppData móvil (%AppData%). Cuando se inicia el entorno virtual, el estado de movilidad de AppData del directorio AppData móvil de usuario que se va a traspasar se copia a la caché local. A su vez, cuando se apaga el entorno virtual, la caché local asociada con el directorio AppData móvil de un usuario específico se transfiere a la ubicación real del directorio AppData móvil de dicho usuario.

Un paquete típico tiene varias ubicaciones asignadas en el almacén de respaldo del usuario para las configuraciones de AppData\Local y AppData\Roaming. Estas son las ubicaciones de Copia en escritura (COW Copy on Write) que se almacenan en el perfil de cada usuario y que se utilizan para almacenar los cambios realizados en los directorios VFS del paquete y para proteger el VFS predeterminado del paquete.

La siguiente tabla muestra las ubicaciones local y móvil cuando no se ha implementado el redireccionamiento de carpetas.

Directorio VFS en el paquete Ubicación asignada del almacén de respaldo

ProgramFilesX86

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\ProgramFilesX86

SystemX86

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\SystemX86

Windows

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\Windows

appv_ROOT

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\appv_ROOT

AppData

C:\users\jsmith\AppData\Roaming\Microsoft\AppV\Client\VFS\<GUID>\AppData

 

La siguiente tabla muestra las ubicaciones locales y móviles, cuando se ha implementado el redireccionamiento de carpetas para %AppData% y la ubicación se ha redirigido (generalmente a una ubicación de red).

Directorio VFS en el paquete Ubicación asignada del almacén de respaldo

ProgramFilesX86

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\ProgramFilesX86

SystemX86

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\SystemX86

Windows

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\Windows

appv_ROOT

C:\users\jsmith\AppData\Local\Microsoft\AppV\Client\VFS\<GUID>\appv_ROOT

AppData

\\Fileserver\users\jsmith\roaming\Microsoft\AppV\Client\VFS\<GUID>\AppData

 

El controlador de VFS del cliente de App-V actual no puede escribir en ubicaciones de red, por lo que el cliente de App-V detecta la presencia de la redirección de carpetas y copia los datos en la unidad local durante la publicación y cuando se inicia el entorno virtual. Una vez que el usuario cierra la aplicación de App-V y el cliente de App-V cierra el entorno virtual, el almacenamiento local de AppData de VFS se copia de nuevo en la red, lo que habilita la movilidad a otros equipos, en los que se repetirá el proceso. Los pasos detallados de los procesos son:

  1. Durante la publicación o el inicio del entorno virtual, el cliente de App-V detecta la ubicación del directorio AppData.

  2. Si la ruta de AppData móvil es local o no hay asignada ubicación de AppData\Roaming, nada sucede.

  3. Si la ruta de AppData móvil no es local, se asigna el directorio AppData de VFS al directorio AppData local.

Este proceso soluciona el problema de que el directorio %AppData% no sea local, que es incompatible con el controlador de VFS del cliente de App-V. Sin embargo, los datos almacenados en esta nueva ubicación no se traspasan con la redirección de carpetas. Todos los cambios ocurridos durante la ejecución de la aplicación tienen lugar en la ubicación de AppData local, y deben copiarse en la ubicación redirigida. Los pasos detallados de este proceso son:

  1. La aplicación de App-V se cierra, lo que cierra el entorno virtual.

  2. La caché local de la ubicación AppData móvil se comprime y se almacena en un archivo ZIP.

  3. Se utiliza una marca de tiempo al final del proceso de empaquetado ZIP para nombrar el archivo.

  4. La marca de tiempo se guarda en el Registro: HKEY_CURRENT_USER\Software\Microsoft\AppV\Client\Packages\<GUID>\AppDataTime como última marca de tiempo AppData conocida.

  5. Se llama al proceso de redirección de carpetas para evaluar e iniciar el archivo ZIP cargado en el directorio AppData móvil.

La marca de tiempo se utiliza para determinar el escenario "gana el último que escribe" en caso de conflicto, y para optimizar la descarga de los datos cuando se publica la aplicación de App-V o se inicia el entorno virtual. La redirección de carpetas hará que estén disponibles los datos de otros clientes afectados por la directiva de soporte, e iniciará el proceso de almacenar los datos de AppData\Roaming en la ubicación AppData local del cliente. Los procesos detallados son:

  1. El usuario inicia el entorno virtual al iniciar una aplicación.

  2. El entorno virtual de la aplicación busca la hora más reciente marcada en el archivo ZIP, si la hay.

  3. Se comprueba en el Registro la última marca de tiempo local cargada conocida, si la hay.

  4. A menos que esta última marca de tiempo sea mayor o igual que la marca de tiempo del archivo ZIP, se descarga el archivo ZIP más reciente.

  5. Si la última marca de tiempo de carga local conocida último local es anterior a la del archivo ZIP más reciente en la ubicación AppData móvil, se extrae el archivo ZIP en el directorio temporal local del perfil del usuario.

  6. Después de extraer correctamente el archivo ZIP, se cambia el nombre de la memoria caché local del directorio AppData móvil y se mueven los nuevos datos.

  7. Se elimina el directorio cuyo nombre se ha cambiado y la aplicación se abre con los datos del directorio AppData móvil guardados más recientemente.

Esto completa la itinerancia correcta de la configuración de la aplicación guardada en ubicaciones de AppData\Roaming. La única otra condición que debe resolverse es una operación de reparación del paquete. Los detalles del proceso son:

  1. Durante la reparación, detecte si la ruta de acceso al directorio AppData móvil del usuario no es local.

  2. Asigne la ruta de acceso al directorio AppData móvil que no sea local. Los destinos de esa ruta se recrean del mismo modo que las ubicaciones esperadas para AppData móvil y local.

  3. Eliminar la marca de tiempo que se almacena en el Registro, si la hay.

Este proceso volverá a crear la ubicación local y la de red de AppData, y eliminará del Registro la marca de tiempo.

Administración de ciclo de vida de aplicaciones de cliente de App-V

En una infraestructura completa de App-V, después de secuenciar las aplicaciones, estas son administradas y publicadas para usuarios o equipos a través de los servidores de administración y publicación de App-V. En esta sección describen en detalle las operaciones que se producen durante las operaciones habituales de ciclo de vida de las aplicaciones de App-V (adición, publicación, inicio, actualización y eliminación) y las ubicaciones de archivos y del Registro que se cambian y modifican desde el punto de vista del cliente de App-V. Las operaciones del cliente de App-V se llevan a cabo como una serie de comandos de PowerShell iniciados en el equipo que ejecuta el cliente de App-V.

Este documento se centra en soluciones de infraestructura completa de App-V. Para obtener información específica sobre la integración de App-V con Configuration Manager 2012, visite: https://go.microsoft.com/fwlink/?LinkId=392773.

Las tareas de ciclo de vida de aplicación de App-V se activan al iniciar la sesión de usuario (de forma predeterminada), al iniciar el equipo, o como operaciones temporizadas en segundo plano. Las opciones de configuración para las operaciones del cliente de App-V, incluidos los servidores de publicación, los intervalos de actualización, la habilitación de los scripts de paquete y otras, se configuran durante la instalación del cliente o posteriormente mediante comandos de PowerShell. Consulte la sección de Technet Cómo implementar el cliente en: Cómo implementar el cliente de App-V o utilice PowerShell:

get-command *appv*

Actualización de publicación

El proceso de actualización de publicación se compone de varias operaciones menores que se realizan en el cliente de App-V. Puesto que App-V es una tecnología de virtualización de aplicaciones y no de programación de tareas, se utiliza el programador de tareas de Windows para habilitar el proceso al inicio de la sesión de usuario, al inicio del equipo y a intervalos programados. La configuración del cliente durante la instalación enumerada anteriormente es el método preferido para distribuir el cliente a un grupo grande de equipos con la configuración correcta. Esta configuración de cliente se puede configurar con los siguientes cmdlets de PowerShell:

  • Add-AppVPublishingServer: Configura el cliente con un servidor de publicación de App-V que proporciona paquetes de App-V.

  • Set-AppVPublishingServer: Modifica la configuración actual para el servidor de publicación de App-V.

  • Set-AppVClientConfiguration: Modifica la configuración actual del cliente de App-V.

  • Sync-AppVPublishingServer: Inicia manualmente un proceso de actualización de publicación de App-V. Esto también se utiliza en las tareas programadas creadas durante la configuración del servidor de publicación.

Las secciones siguientes se centran en detallar las operaciones que se producen durante las distintas fases de una actualización de publicación de App-V. Los temas incluyen:

  • Adición de un paquete de App-V

  • Publicar un paquete de App-V

Adición de un paquete de App-V

La adición de un paquete de App-V al cliente es el primer paso del proceso de actualización de publicación. El resultado final es el mismo que con el cmdlet de PowerShell Add-AppVClientPackage, salvo que durante el proceso de agregar la actualización de publicación se contacta con el servidor de publicación, que pasa al cliente una lista general de las aplicaciones para extraer información más detallada, en lugar de una única operación de agregar paquete. El proceso continúa con la configuración del cliente para agregar o actualizar paquetes o grupos de conexiones y luego accede al archivo appv. Luego, el contenido del archivo appv se expande y se sitúa en las ubicaciones adecuadas del sistema operativo local. A continuación se muestra un flujo de trabajo detallado del proceso, suponiendo que el paquete está configurado para Fault Streaming (transmisión gradual).

Cómo agregar un paquete de App-V

  1. Inicio manual del proceso de actualización de publicación a través de PowerShell o inicio a través de Secuencia de tareas.

    1. El cliente de App-V realiza una conexión HTTP y solicita una lista de aplicaciones basadas en el destino. El proceso de actualización de publicación admite como destinos tanto equipos como usuarios.

    2. El servidor de publicación de App-V utiliza la identidad del destino iniciador, usuario o equipo, y consulta la base de datos para obtener una lista de aplicaciones autorizadas. La lista de aplicaciones se proporciona en forma de respuesta XML, que el cliente utiliza para enviar solicitudes adicionales al servidor para obtener más información de cada paquete.

  2. El agente de publicación del cliente de App-V realiza todas las acciones enumeradas a continuación.

    Evaluar los grupos de conexiones no publicados o deshabilitados, puesto que no se pueden procesar las actualizaciones de versión del paquete que forman parte del grupo de conexiones.

  3. Configurar los paquetes mediante la identificación de operaciones de agregar o actualizar.

    1. El cliente de App-V usa la API AppX de Windows y accede al archivo appv desde el servidor de publicación.

    2. Se abre el archivo de paquete y AppXManifest.xml y StreamMap.xml se descargan al almacén de paquetes.

    3. Transmitir completamente los datos del bloque de publicación definidos en StreamMap.xml. Almacena los datos del bloque de publicación en el almacén de paquetes, en \PkgGUID\VerGUID\Root.

      • Iconos: Destinos de puntos de extensión.

      • Encabezados de ejecutable portátiles (encabezados PE): Destinos de puntos de extensión que contienen la información básica acerca de la necesidad de imagen en disco, accedidos directamente o a través de tipos de archivo.

      • Scripts: Descargar el directorio de scripts para su uso durante todo el proceso de publicación.

    4. Llenar el almacén de paquetes:

      1. Crear archivos dispersos en disco que representan el paquete extraído para los directorios enumerados.

      2. Almacenar provisionalmente archivos y directorios de nivel superior en la raíz.

      3. Todos los demás archivos se crean cuando el directorio se describe como disperso en disco y se transmite a petición.

    5. Crear las entradas del catálogo de equipo. Crear los archivos Manifest.xml y DeploymentConfiguration.xml a partir de los archivos de paquete (si no se crea un archivo DeploymentConfiguration.xml en el paquete, se creará un marcador de posición).

    6. Crear la ubicación del almacén de paquetes en el Registro, en HKLM\Software\Microsoft\AppV\Client\Packages\PkgGUID\Versions\VerGUID\Catalog

    7. Crear el archivo Registry.dat a partir del almacén de paquetes, en %ProgramData%\Microsoft\AppV\Client\VReg\{VersionGUID}.dat

    8. Registrar el paquete con el controlador de modo kernel de App-V HKLM\Microsoft\Software\AppV\MAV

    9. Invocar scripts de los archivos AppxManifest.xml o DeploymentConfig.xml para el control de tiempo de la adición de paquetes.

  4. Configurar grupos de conexiones agregando y habilitando o deshabilitando.

  5. Quitar los objetos que no se publican en el destino (usuario o equipo).

    Nota

    Esto no realiza una eliminación del paquete, sino que elimina puntos de integración para el destino concreto (usuario o equipo) y elimina archivos de catálogo de usuario (archivos de catálogo de la máquina en el caso de publicación global).

  6. Invocar montaje de carga en segundo plano en función de la configuración del cliente.

  7. Los paquetes que ya tienen información de publicación para el equipo o usuario se restauran inmediatamente.

    Nota

    Esta situación tiene lugar como producto de una operación de eliminar sin anular la publicación con adición del paquete en segundo plano.

Este paso completa la adición de un paquete de App-V en el proceso de actualización de publicación. El siguiente paso es publicar el paquete en el destino específico (equipo o usuario).

Paquete de adición de archivos y datos de registro

Publicar un paquete de App-V

Durante la operación de actualización de publicación, la operación específica de publicación (Publish-AppVClientPackage) agrega entradas al catálogo de usuario, asigna derechos al usuario, identifica el almacén local y completa los pasos de integración. Éstos son los pasos detallados.

Cómo publicar un paquete de App-V

  1. Las entradas de paquete se agregan al catálogo de usuario

    1. Paquetes destinados al usuario: los archivos UserDeploymentConfiguration.xml y UserManifest.xml se sitúan en el equipo, en el catálogo de usuario

    2. Paquetes destinados al equipo (globales): el archivo UserDeploymentConfiguration.xml se sitúa en el catálogo de equipo

  2. Registrar el paquete con el controlador de modo kernel para el usuario en HKLM\Software\Microsoft\AppV\MAV

  3. Realizar tareas de integración.

    1. Crear puntos de extensión.

    2. Almacenar información de copia de seguridad en el Registro y en el perfil móvil del usuario (copias de seguridad de accesos directos).

      Nota

      Esto permite restaurar los puntos de extensión si se anula la publicación del paquete.

    3. Ejecutar scripts destinados al control de tiempo de la publicación.

Publicar un paquete de App-V que forma parte de un grupo de conexiones es muy similar al proceso anterior. Para grupos de conexiones, la ruta de acceso que almacena la información específica de catálogo incluye PackageGroups como elemento secundario del directorio del catálogo. Para más detalles, revisar la información de los anteriores catálogos de equipo y de usuarios.

Paquete de adición de archivos y datos de registro: global

Inicio de la aplicación

Después del proceso de actualización de publicación, el usuario inicia y posteriormente vuelve a iniciar una aplicación de App-V. El proceso es muy sencillo y optimizado para iniciar rápidamente con un mínimo de tráfico de red. El cliente de App-V comprueba si hay archivos creados durante la publicación en la ruta de acceso al catálogo de usuario. Una vez establecidos los derechos para iniciar el paquete, el cliente de App-V crea un entorno virtual, empieza a transmitir los datos necesarios y aplica los archivos de configuración de implementación y el manifiesto adecuados durante la creación del entorno virtual. Una vez creado y configurado el entorno virtual para el paquete y la aplicación específicos, se inicia la aplicación.

Cómo iniciar aplicaciones de App-V

  1. El usuario inicia la aplicación haciendo clic en una llamada de acceso directo o de tipo de archivo.

  2. El cliente de App-V comprueba la existencia de los archivos siguientes en el catálogo de usuario

    • UserDeploymentConfiguration.xml

    • UserManifest.xml

  3. Si los archivos están presentes, la aplicación está autorizada para ese usuario concreto y pondrá en marcha el proceso de inicio. En este momento aún no hay ningún tráfico de red.

  4. A continuación, el cliente de App-V comprueba que la ruta de acceso al paquete registrado para el servicio de cliente de App-V se encuentra en el Registro.

  5. Después de encontrar la ruta de acceso al almacén de paquetes, se crea el entorno virtual. Si este es el primer inicio, se descarga el bloque de características principales, si lo hay.

  6. Después de la descarga, el servicio cliente de App-V lee los archivos de configuración de implementación y el manifiesto para configurar el entorno virtual, y se cargan todos los subsistemas de App-V.

  7. Se inicia la aplicación. Para los archivos que faltan en el almacén de paquetes (archivos dispersos), App-V transmitirá los archivos por secuencias según sean necesarios.

    Paquete de adición de archivos y datos de registro: transmisión

Actualización de un paquete de App-V

El proceso de actualización de paquetes de App-V 5 difiere de las versiones anteriores de App-V. App-V admite varias versiones del mismo paquete en un equipo autorizado para distintos usuarios. Las versiones del paquete se pueden agregar en cualquier momento a medida que el almacén de paquetes y los catálogos se actualizan con los nuevos recursos. El único proceso específico de la adición de nuevos recursos de versión es la optimización del almacenamiento. Durante una actualización, sólo los archivos nuevos se agregan a la ubicación de almacén de la nueva versión y se crean vínculos físicos para los archivos sin modificar. Esto reduce el volumen de almacenamiento general, ya que el archivo sólo está presente en una ubicación de disco y se proyecta en todas las carpetas mediante una entrada de ubicación del archivo en el disco. Los detalles específicos de la actualización de un paquete de App-V son los siguientes:

Cómo actualizar un paquete de App-V

  1. El cliente de App-V efectúa una actualización de publicación y detecta una versión más reciente de un paquete de App-V.

  2. Se agregan las entradas de paquete para la nueva versión en el catálogo apropiado

    1. Paquetes destinados al usuario: los archivos UserDeploymentConfiguration.xml y UserManifest.xml se sitúan en el equipo del catálogo de usuario, en appdata\roaming\Microsoft\AppV\Client\Catalog\Packages\PkgGUID\VerGUID

    2. Paquetes destinados al equipo (globales): el archivo UserDeploymentConfiguration.xml se sitúa en el catálogo de equipo, en %programdata%\Microsoft\AppV\Client\Catalog\Packages\PkgGUID\VerGUID

  3. Registrar el paquete con el controlador de modo kernel para el usuario en HKLM\Software\Microsoft\AppV\MAV

  4. Realizar tareas de integración.

    1. Integrar puntos de extensiones (EP) de los archivos de manifiesto y de configuración dinámica.
    1. Los datos de EP basados en archivos se almacenan en la carpeta AppData utilizando puntos de unión del almacén de paquetes.

    2. Los EP de versión 1 ya existen cuando aparece una nueva versión.

    3. Los puntos de extensión se cambian a la ubicación de la versión 2 en catálogos de equipo o de usuario para puntos de extensión nuevos o actualizados.

  5. Ejecutar scripts destinados al control de tiempo de la publicación.

  6. Instalar ensamblados en paralelo, según sea necesario.

Actualización de un paquete de App-V en uso

A partir de App-V 5 SP2: Si intenta actualizar un paquete que está siendo utilizado por un usuario final, la tarea de actualización se sitúa en un estado pendiente. La actualización se ejecutará más adelante, según las reglas siguientes:

Tipo de tarea Regla aplicable

Tarea de usuario, como publicar un paquete para un usuario

La tarea pendiente se lleva a cabo cuando el usuario cierra la sesión y, a continuación, vuelve a iniciarla.

Tarea global, como habilitar globalmente un grupo de conexiones

La tarea pendiente se lleva a cabo cuando el equipo se apaga y, a continuación, se reinicia.

Cuando se pone una tarea en estado pendiente, el cliente de App-V también genera una clave del Registro para la tarea pendiente, como esta:

Tarea de usuario o global Cuando se genera la clave del Registro

Tareas de usuario

KEY_CURRENT_USER\Software\Microsoft\AppV\Client\PendingTasks

Tareas globales

HKEY_LOCAL_MACHINE\Software\Microsoft\AppV\Client\PendingTasks

Para que los usuarios puedan utilizar la versión más reciente del paquete, se deben completar las siguientes operaciones:

Tarea Detalles

Agregar el paquete al equipo

Esta tarea es específica del equipo y se puede realizar en cualquier momento siguiendo los pasos indicados en la sección anterior Agregar paquete.

Publicar el paquete

Siga los pasos indicados en la sección anterior Publicación de paquete. Este proceso requiere la actualización de los puntos de extensión en el sistema. Los usuarios finales no pueden utilizar la aplicación mientras está llevando a cabo esta tarea.

Utilice los siguientes escenarios de ejemplo como guía para la actualización de paquetes.

Escenario Requisitos

El paquete de App-V no se está utilizando mientras se intenta efectuar la actualización

Ninguno de los siguientes componentes del paquete puede estar en uso: aplicación virtual, servidor COM o extensiones de shell.

El administrador publica una versión más reciente del paquete y la actualización funciona la próxima vez que se inicia un componente o aplicación dentro del paquete. La nueva versión del paquete se transmite y se ejecuta. No ha cambiado nada en este escenario en App-V 5 SP2 con respecto a versiones anteriores de App-V 5.

El paquete de App-V está en uso cuando el administrador publica una versión más reciente del paquete

El cliente de App-V establece como pendiente la operación de actualización, lo que significa que se pone en cola y se lleva a cabo posteriormente, cuando no se está utilizando el paquete.

Si la aplicación del paquete está en uso, el usuario cierra la aplicación virtual; entonces puede tener lugar la actualización.

Si el paquete tiene extensiones de shell (Office 2013), que el Explorador de Windows carga permanentemente, el usuario no puede tener sesión iniciada. Los usuarios deben cerrar la sesión y volver a iniciarla para iniciar la actualización del paquete de App-V.

Publicación global y de usuario

Los paquetes de App-V se pueden publicar de dos maneras; Usuario, que autoriza un paquete de App-V para un usuario o grupo de usuarios específico, y Global, que autoriza el paquete de App-V a todo el equipo, para todos los usuarios de éste. Una vez que una actualización de paquete se ha establecido como pendiente y el paquete de App-V no está en uso, tenga en cuenta los dos tipos de publicación:

  • Publicar globalmente: la aplicación se publica para un equipo; todos los usuarios del equipo la pueden usar. La actualización se realizará cuando se inicie el servicio de cliente de App-V, lo que significa, de hecho, un reinicio del equipo.

  • Publicado para usuario: la aplicación se publica para un usuario. Si hay varios usuarios en el equipo, la aplicación se puede publicar para un subconjunto de ellos. La actualización se realizará cuando el usuario inicie sesión o cuando se vuelva a publicar (periódicamente, por actualización y evaluación de directiva de Configuration Manager, por publicación o actualización periódica de App-V, o explícitamente mediante comandos de PowerShell).

Eliminación de un paquete de App-V

La eliminación de aplicaciones de App-V en una infraestructura completa es una operación de anulación de la publicación y no realiza una eliminación de paquetes. El proceso es el mismo que el proceso de publicación anterior, pero en lugar de agregar, el proceso de eliminación invierte los cambios que realizados en paquetes de App-V.

Reparación de un paquete de App-V

La operación de reparación es muy sencilla, pero puede afectar a muchas ubicaciones en el equipo. Se eliminan las ubicaciones de Copiar en escritura (COW) mencionadas anteriormente, y se anula la integración y se vuelven a integrar los puntos de extensión. Revise las ubicaciones de colocación de datos COW revisando dónde quedan registrados en el Registro. Esta operación se lleva a cabo automáticamente y no hay ningún control administrativo que no sea el de iniciar una operación de reparación desde la consola del cliente de App-V o mediante PowerShell (Repair-AppVClientPackage).

Integración de paquetes de App-V

El cliente y la arquitectura de paquetes de App-V proporciona integración específica con el sistema operativo local durante la adición y publicación de paquetes. Tres archivos definen los puntos de integración o extensión de un paquete de App-V:

  • AppXManifest.xml: Se almacena en el paquete, con copias de reserva guardadas en el almacén de paquetes y en el perfil de usuario. Contiene las opciones creadas durante el proceso de secuenciación.

  • DeploymentConfig.xml: Proporciona información de configuración de los puntos de extensión de integración basados en el equipo y en el usuario.

  • UserConfig.xml: Subconjunto de Deploymentconfig.xml que sólo proporciona configuraciones basadas en usuario y cuyo destino es únicamente los puntos de extensión basados en usuario.

Reglas de integración

Cuando se publican aplicaciones de App-V en un equipo con el cliente de App-V, tienen lugar algunas acciones específicas, que se describen en la lista siguiente:

  • Publicación global: Se almacenan accesos directos en la ubicación de perfil Todos los usuarios, y otros puntos de extensión se almacenan en el Registro, en el subárbol HKLM.

  • Publicación de usuario: Se almacenan accesos directos en el perfil de la cuenta de usuario actual, y otros puntos de extensión se almacenan en el Registro, en el subárbol HKCU.

  • Copia de seguridad y restauración: Los datos de aplicaciones nativas y el Registro (por ejemplo, los registros FTA) se copian durante la publicación.

    1. La propiedad asignada a los paquetes de App-V se basa en el último paquete integrado en el que se pasó la propiedad a la aplicación de App-V publicada más recientemente.

    2. La propiedad se transfiere de un paquete de App-V a otro cuando se anula la publicación del paquete de App-V propietario. Este proceso no inicia una restauración de los datos o del Registro.

    3. Restaure las copias de seguridad de los datos cuando se elimine o se anule la publicación del último paquete, en función del punto de extensión.

Puntos de extensión

Los archivos de publicación de App-V (manifiesto y configuración dinámica) proporcionan varios puntos de extensión que permiten a la aplicación integrarse con el sistema operativo local. Estos puntos de extensión realizan tareas típicas de instalación de aplicaciones, como situar accesos directos, crear asociaciones de tipo de archivo y registrar componentes. Como se trata de aplicaciones virtualizadas que no están instaladas igual que una aplicación tradicional, hay algunas diferencias. A continuación se enumeran los puntos de extensión que se tratan en esta sección:

  • Accesos directos

  • Asociaciones de tipo de archivo

  • Extensiones de shell

  • COM

  • Clientes de software

  • Funcionalidades de la aplicación

  • Controlador de protocolo de dirección URL

  • AppPath

  • Aplicación virtual

Accesos directos

El acceso directo es uno de los elementos básicos de integración con el sistema operativo, y es la interfaz de inicio directo de una aplicación de App-V por parte del usuario. Durante la publicación y anulación de publicación de aplicaciones de App-V.

A partir de los archivos XML de configuración dinámica y manifiesto del paquete, la ruta de acceso al ejecutable de una aplicación específica puede encontrarse en una sección similar a la siguiente:

<Extension Category="AppV.Shortcut">
          <Shortcut>
            <File>[{Common Desktop}]\Adobe Reader 9.lnk</File>
            <Target>[{AppVPackageRoot}]\Reader\AcroRd32.exe</Target>
            <Icon>[{Windows}]\Installer\{AC76BA86-7AD7-1033-7B44-A94000000001}\SC_Reader.ico</Icon>
            <Arguments />
            <WorkingDirectory />
            <ShowCommand>1</ShowCommand>
            <ApplicationId>[{AppVPackageRoot}]\Reader\AcroRd32.exe</ApplicationId>
          </Shortcut>
        </Extension>

Como se mencionó anteriormente, los accesos directos de App-V se sitúan, de forma predeterminada, en el perfil del usuario en función de la operación de actualización. La actualización global coloca accesos directos en el perfil Todos los usuarios y la actualización de usuario los almacena en el perfil del usuario específico. El archivo ejecutable en sí se guarda en el almacén de paquetes. La ubicación del archivo ICO es una ubicación con tokens en el paquete de App-V.

Asociaciones de tipo de archivo

El cliente de App-V administra las asociaciones de tipo de archivo del sistema operativo local durante la publicación, lo que permite a los usuarios utilizar invocaciones de tipo de archivo o abrir un archivo con una extensión registrada específicamente (.docx) para iniciar una aplicación de App-V. Las asociaciones de tipo de archivo están presentes en los archivos de manifiesto y configuración dinámica, como se muestra en el ejemplo siguiente:

<Extension Category="AppV.FileTypeAssociation">
          <FileTypeAssociation>
            <FileExtension MimeAssociation="true">
              <Name>.xdp</Name>
              <ProgId>AcroExch.XDPDoc</ProgId>
              <ContentType>application/vnd.adobe.xdp+xml</ContentType>
            </FileExtension>
            <ProgId>
              <Name>AcroExch.XDPDoc</Name>
              <Description>Adobe Acrobat XML Data Package File</Description>
              <EditFlags>65536</EditFlags>
              <DefaultIcon>[{Windows}]\Installer\{AC76BA86-7AD7-1033-7B44-A94000000001}\XDPFile_8.ico</DefaultIcon>
              <ShellCommands>
                <DefaultCommand>Read</DefaultCommand>
                <ShellCommand>
                  <ApplicationId>[{AppVPackageRoot}]\Reader\AcroRd32.exe</ApplicationId>
                  <Name>Open</Name>
                  <CommandLine>"[{AppVPackageRoot}]\Reader\AcroRd32.exe" "%1"</CommandLine>
                </ShellCommand>
                <ShellCommand>
                  <ApplicationId>[{AppVPackageRoot}]\Reader\AcroRd32.exe</ApplicationId>
                  <Name>Printto</Name>
                  <CommandLine>"[{AppVPackageRoot}]\Reader\AcroRd32.exe"  /t "%1" "%2" "%3" "%4"</CommandLine>
                </ShellCommand>
                <ShellCommand>
                  <ApplicationId>[{AppVPackageRoot}]\Reader\AcroRd32.exe</ApplicationId>
                  <Name>Read</Name>
                  <FriendlyName>Open with Adobe Reader 9</FriendlyName>
                  <CommandLine>"[{AppVPackageRoot}]\Reader\AcroRd32.exe" "%1"</CommandLine>
                </ShellCommand>
              </ShellCommands>
            </ProgId>
          </FileTypeAssociation>
        </Extension>

Nota

En este ejemplo:

  • <Name>.xdp</Name> es la extensión

  • <Name>AcroExch.XDPDoc</Name> es el valor de ProgId (que señala al ProgId adyacente)

  • <CommandLine>"[{AppVPackageRoot}]\Reader\AcroRd32.exe" "%1"</CommandLine> es la línea de comandos que señala a la aplicación ejecutable

Extensiones de shell

Las extensiones de shell se incrustan automáticamente en el paquete durante el proceso de secuenciación. Cuando el paquete se publica globalmente, la extensión de shell ofrece a los usuarios la misma funcionalidad que si la aplicación estuviera instalada localmente. La aplicación no requiere configuración adicional ni configuración en el cliente para habilitar la funcionalidad de la extensión de shell.

Requisitos para usar las extensiones de shell:

  • Los paquetes que contienen las extensiones de shell incrustadas deben publicarse globalmente.

  • El valor de bits de la aplicación, el secuenciador y el cliente de App-V deben coincidir, o las extensiones de shell no funcionarán. Por ejemplo:

    • La versión de la aplicación es de 64 bits.

    • El secuenciador se ejecuta en un equipo de 64 bits.

    • El paquete se entrega a un equipo cliente de App-V de 64 bits.

En la lista siguiente se muestran las extensiones de shell compatibles:

Controlador Descripción

Controlador del menú contextual

Agrega elementos al menú contextual. Se llama al controlador antes de que se muestre el menú contextual.

Controlador de arrastrar y colocar

Controla la acción de hacer clic con el botón secundario y arrastrar y colocar; asimismo, modifica el menú contextual que aparece.

Controlador del destino de colocación

Controla la acción que se realiza después de arrastrar y colocar un objeto de datos sobre un destino de colocación, como un archivo.

Controlador de objeto de datos

Controla la acción que se realiza después de copiar un archivo en el portapapeles o de arrastrarlo y colocarlo sobre un destino de colocación. Este controlador ofrece formatos de portapapeles adicionales al destino de colocación.

Controlador de la hoja de propiedades

Reemplaza o agrega páginas al cuadro de diálogo de hoja de propiedades de un objeto.

Controlador de recuadro informativo

Permite recuperar de un elemento marcas e información de un recuadro informativo para incluirlos en una sugerencia emergente que se mostrará al situar encima el cursor del mouse.

Controlador de columnas

Permite crear y mostrar columnas personalizadas en la vista Detalles del Explorador de Windows. Puede usarse para ampliar la ordenación y la agrupación.

Controlador de vista previa

Permite que se muestre una vista previa de un archivo en el panel de vista previa del Explorador de Windows.

COM

El cliente de App-V admite la publicación de aplicaciones con compatibilidad para integración y virtualización de COM. La integración de COM permite que el cliente de App-V registre objetos COM en el sistema operativo local, así como la virtualización de los objetos. Para los fines de este documento, la integración de objetos COM requiere detalles adicionales.

App-V es compatible con el Registro de objetos COM del paquete en el sistema operativo local con dos tipos de procesos: Fuera de proceso y en proceso. El Registro de objetos COM se lleva a cabo con un modo de funcionamiento o con una combinación de varios modos para un paquete específico de App-V que incluye Desactivado, Aislado e Integrado. El modo Integrado está configurado para el tipo fuera de proceso o para el tipo en proceso. La configuración de tipos y modos COM se realiza mediante archivos de configuración dinámica (deploymentconfig.xml o userconfig.xml).

Los detalles sobre la integración de App-V están disponibles en: https://go.microsoft.com/fwlink/?LinkId=392834.

Clientes de software y funcionalidad de las aplicaciones

App-V es compatible con clientes de software y puntos de extensión de capacidades de aplicación específicos que permiten a las aplicaciones virtualizadas registrarse con el software cliente del sistema operativo. Esto permite a los usuarios seleccionar los programas predeterminados para operaciones como correo electrónico, mensajería instantánea y reproducción de medios. Esta operación se realiza en el panel de control, con la opción Configurar acceso y programas predeterminados en el equipo, y se configura durante la secuenciación en los archivos de configuración dinámica o de manifiesto. Las funcionalidades de aplicación sólo se admiten cuando las aplicaciones de App-V se publican globalmente.

Ejemplo de registro de cliente de software de un cliente de correo electrónico basado en App-V.

    <SoftwareClients Enabled="true">
      <ClientConfiguration EmailEnabled="true" />
      <Extensions>
        <Extension Category="AppV.SoftwareClient">
          <SoftwareClients>
            <EMail MakeDefault="true">
              <Name>Mozilla Thunderbird</Name>
              <Description>Mozilla Thunderbird</Description>
              <DefaultIcon>[{ProgramFilesX86}]\Mozilla Thunderbird\thunderbird.exe,0</DefaultIcon>
              <InstallationInformation>
                <RegistrationCommands>
                  <Reinstall>"[{ProgramFilesX86}]\Mozilla Thunderbird\uninstall\helper.exe" /SetAsDefaultAppGlobal</Reinstall>
                  <HideIcons>"[{ProgramFilesX86}]\Mozilla Thunderbird\uninstall\helper.exe" /HideShortcuts</HideIcons>
                  <ShowIcons>"[{ProgramFilesX86}]\Mozilla Thunderbird\uninstall\helper.exe" /ShowShortcuts</ShowIcons>
                </RegistrationCommands>
                <IconsVisible>1</IconsVisible>
                <OEMSettings />
              </InstallationInformation>
              <ShellCommands>
                <ApplicationId>[{ProgramFilesX86}]\Mozilla Thunderbird\thunderbird.exe</ApplicationId>
                <Open>"[{ProgramFilesX86}]\Mozilla Thunderbird\thunderbird.exe" -mail</Open>
              </ShellCommands>
              <MAPILibrary>[{ProgramFilesX86}]\Mozilla Thunderbird\mozMapi32_InUse.dll</MAPILibrary>
              <MailToProtocol>
                <Description>Thunderbird URL</Description>
                <EditFlags>2</EditFlags>
                <DefaultIcon>[{ProgramFilesX86}]\Mozilla Thunderbird\thunderbird.exe,0</DefaultIcon>
                <ShellCommands>
                  <ApplicationId>[{ProgramFilesX86}]\Mozilla Thunderbird\thunderbird.exe</ApplicationId>
                  <Open>"[{ProgramFilesX86}]\Mozilla Thunderbird\thunderbird.exe" -osint -compose "%1"</Open>
                </ShellCommands>
              </MailToProtocol>
            </EMail>
          </SoftwareClients>
        </Extension>
      </Extensions>
    </SoftwareClients>

Nota

En este ejemplo:

  • <ClientConfiguration EmailEnabled="true" /> es la configuración general de los clientes de software para integrar clientes de correo electrónico

  • <EMail MakeDefault="true"> es el indicador para configurar un cliente de correo electrónico determinado como cliente predeterminado

  • <MAPILibrary>[{ProgramFilesX86}]\Mozilla Thunderbird\mozMapi32_InUse.dll</MAPILibrary> es el registro de la dll MAPI

Controlador de protocolo de dirección URL

Las aplicaciones no siempre llamen específicamente a las aplicaciones virtualizadas mediante la invocación del tipo de archivo. Por ejemplo, en una aplicación que admite la incrustación de un vínculo mailto: vínculo dentro de un documento o página web, el usuario hace clic en un vínculo mailto: y espera acceder a su cliente de correo registrado. App-V admite controladores de protocolo de dirección URL, que se pueden registrar paquete a paquete con el sistema operativo local. Durante la secuenciación, los controladores de protocolo de dirección URL se agregan automáticamente al paquete.

Para las situaciones donde hay más de una aplicación que podría registrar el controlador de protocolo de dirección URL específico, pueden usarse los archivos de configuración dinámica para modificar el comportamiento y suprimir o deshabilitar esta característica para una aplicación que no debería ser la aplicación principal ejecutada.

AppPath

El punto de extensión AppPath admite llamar a aplicaciones de App-V directamente desde el sistema operativo. Esto se lleva a cabo generalmente desde las pantallas Ejecutar o Inicio, según el sistema operativo, lo que permite a los administradores ofrecer acceso a aplicaciones de App-V desde comandos del sistema operativo o scripts sin llamar a la ruta de acceso específica al ejecutable. Por lo tanto, evita modificar la variable de entorno de ruta de acceso de sistema en todos los sistemas, como se realiza durante la publicación.

El punto de extensión AppPath se configura en el archivo de manifiesto o en el de configuración dinámica y se almacena en el Registro del equipo local durante la publicación para el usuario. Para obtener información adicional sobre AppPath, consulte: https://go.microsoft.com/fwlink/?LinkId=392835.

aplicación virtual

Este subsistema proporciona una lista de aplicaciones que se capturan durante la secuenciación, que normalmente es utilizada por otros componentes de App-V. La integración de puntos de extensión que pertenecen a una aplicación determinada se puede deshabilitar mediante el uso de archivos de configuración dinámica. Por ejemplo, si un paquete contiene dos aplicaciones, es posible deshabilitar todos los puntos de extensión que pertenecen a una aplicación para permitir sólo la integración de los puntos de extensión de la otra aplicación.

Reglas de puntos de extensión

Los puntos de extensión descritos anteriormente están integrados en el sistema operativo en función de cómo se han publicado los paquetes. La publicación global sitúa puntos de extensión en ubicaciones públicas del equipo, mientras que la publicación de usuario sitúa los puntos de extensión en ubicaciones de usuario. Por ejemplo un acceso directo creado en el escritorio y publicado de manera global generará los datos de archivo para el acceso directo (%Public%\Desktop) y los datos del Registro (HKLM\Software\Classes). El mismo acceso directo tendría datos de archivo (%UserProfile%\Desktop) y datos del Registro (HKCU\Software\Classes).

No todos los puntos de extensión se publican del mismo modo; algunos requieren publicación global, mientras que otros requieren secuenciación en el sistema operativo y arquitectura específicos en los que se entregan. A continuación se muestra una tabla que describe estas dos reglas claves.

Extensión virtual Requiere secuenciación en SO de destino Requiere publicación global

Shortcut

Asociación de tipo de archivo

Protocolos de dirección URL

X

AppPaths

X

Modo de COM

Cliente de software

X

Funcionalidades de la aplicación

X

X

Controlador del menú contextual

X

X

Controlador de arrastrar y colocar

X

Controlador de objeto de datos

X

Controlador de la hoja de propiedades

X

Controlador de recuadro informativo

X

Controlador de columnas

X

Extensiones de shell

X

Objeto auxiliar de explorador

X

X

Objeto Active X

X

X

Procesamiento de configuración dinámica

La implementación de paquetes de App-V a un equipo o usuario es muy sencilla. Sin embargo, a medida que las organizaciones implementan aplicaciones AppV a través de líneas de negocio y fronteras geográficas y políticas, resulta imposible secuenciar una aplicación una vez con un conjunto de opciones de configuración. App-V se diseñó para este escenario, ya que captura opciones de configuración específicas en el archivo de manifiesto durante la secuenciación, pero también admite la modificación con archivos de configuración dinámica.

La configuración dinámica de App-V permite especificar una directiva para un paquete en el nivel de equipo o en el nivel de usuario. Los archivos de configuración dinámica permiten a los ingenieros de secuenciación modificar la configuración de un paquete después de la secuenciación, a fin de satisfacer las necesidades de los grupos individuales de usuarios o equipos. En algunos casos puede ser necesario realizar modificaciones en la aplicación para proporcionar la funcionalidad adecuada dentro del entorno de App-V. Por ejemplo, puede ser necesario realizar modificaciones en los archivos _*config.xml para permitir que se realicen ciertas acciones en un momento determinado durante la ejecución de la aplicación, como deshabilitar una extensión mailto para evitar que una aplicación virtualizada sobrescriba esa extensión desde otra aplicación.

Los paquetes de App-V contienen el archivo de manifiesto dentro del archivo de paquete appv, que es representativo de las operaciones de secuenciación y es la directiva preferida, a menos que se asignen archivos de configuración dinámica a un paquete específico. Después de la secuenciación, los archivos de configuración dinámica se pueden modificar para permitir la publicación de una aplicación para diferentes equipos o usuarios con puntos de extensión diferentes. Los dos archivos de configuración dinámica son el archivo de configuración dinámica de implementación (DDC) y el archivo de configuración dinámica de usuario (DUC). Esta sección se centra en la combinación de los archivos de manifiesto y de configuración dinámica.

Ejemplo de archivos de configuración dinámica

El ejemplo siguiente muestra la combinación de los archivos de manifiesto, configuración de implementación y configuración de usuario después de la publicación y durante el funcionamiento normal. Se trata de ejemplos abreviados de cada uno de los archivos. La finalidad es únicamente mostrar la combinación de los archivos y no ser una descripción completa de las categorías específicas disponibles en cada uno de los archivos. Para obtener más información, consulte la Guía de secuenciación de App-V 5 en: https://go.microsoft.com/fwlink/?LinkID=269810

Manifiesto

<appv:Extension Category="AppV.Shortcut">
     <appv:Shortcut>
          <appv:File>[{Common Programs}]\7-Zip\7-Zip File Manager.lnk</appv:File>
          <appv:Target>[{AppVPackageRoot}]\7zFM.exe</appv:Target>
          <appv:Icon>[{AppVPackageRoot}]\7zFM exe.O.ico</appv:Icon>
     </appv:Shortcut>
</appv:Extension>

Configuración de implementación

<MachineConfiguration>
     <Subsystems>
          <Registry>
               <Include>
                    <Key Path= "\REGISTRY\Machine\Software\7zip">
                    <Value Type="REG_SZ" Name="Config" Data="1234"/>
                    </Key>
               </Include>
          </Registry>
     </Subsystems>

Configuración de usuario

<UserConfiguration>
     <Subsystems>
<appv:ExtensionCategory="AppV.Shortcut">
     <appv:Shortcut>
          <appv:File>[{Desktop}]\7-Zip\7-Zip File Manager.lnk</appv:File>
          <appv:Target>[{AppVPackageRoot}]\7zFM.exe</appv:Target>
          <appv:Icon>[{AppVPackageRoot}]\7zFM exe.O.ico</appv:Icon>
     </appv:Shortcut>
</appv:Extension>
     </Subsystems>
<UserConfiguration>
     <Subsystems>
<appv:Extension Category="AppV.Shortcut">
     <appv:Shortcut>
          <appv:Fìle>[{Desktop}]\7-Zip\7-Zip File Manager.lnk</appv:File>
          <appv:Target>[{AppVPackageRoot}]\7zFM.exe</appv:Target>
          <appv:lcon>[{AppVPackageRoot}]\7zFM.exe.O.ico</appv:Icon>
     </appv:Shortcut>
     <appv:Shortcut>
          <appv:File>[{Common Programs}]\7-Zip\7-Zip File Manager.Ink</appv:File>
          <appv:Target>[{AppVPackageRoot}]\7zFM.exe</appv:Target>
          <appv:lcon>[{AppVPackageRoot)]\7zFM.exe.O.ico</appv: Icon>
     </appv:Shortcut>
</appv:Extension>
     </Subsystems>
<MachineConfiguration>
     <Subsystems>
          <Registry>
               <Include>
                    <Key Path="\REGISTRY\Machine\Software\7zip">
                    <Value Type=”REG_SZ" Name="Config" Data="1234"/>
               </Include>
          </Registry>
     </Subsystems>

Ensamblados en paralelo

App-V admite el empaquetado automático de los ensamblados en paralelo (SxS) durante la secuenciación e implementación en el cliente en la publicación de aplicaciones virtuales. App-V 5 SP2 admite la captura de ensamblados SxS durante la secuenciación para ensamblados que no se encuentran en el equipo que lleva a cabo la secuenciación. Y en el caso de ensamblados que constan de Visual C++ (versión 8 y posterior) o tiempos de ejecución MSXML, el secuenciador detectará y capturará automáticamente estas dependencias, aunque no se instalaron durante la supervisión. La característica de ensamblados en paralelo elimina las limitaciones de las versiones anteriores de App-V, donde el secuenciador de App-V no capturaba los ensamblados ya presentes en la estación de trabajo de secuenciación, se privatizaban los ensamblados, lo que imponía un límite de una versión (en cuanto a valor de bits) por paquete. Este comportamiento tenía como efecto la implementación de aplicaciones de App-V a clientes que carecían de los ensamblados SxS necesarios, lo que provocaba errores de inicio de aplicación. Esto forzaba al proceso de empaquetado a documentar y, a continuación, asegurarse de que todos los ensamblados necesarios para los paquetes estuviesen instalados localmente en el sistema operativo cliente del usuario, para garantizar la compatibilidad con las aplicaciones virtuales. Según el número de ensamblados y la falta de documentación de la aplicación para las dependencias requeridas, esta tarea era un desafío, tanto de implementación como de administración.

La compatibilidad con los ensamblados en paralelo en App-V tiene las siguientes características.

  • Capturas automáticas de ensamblados SxS durante la secuenciación, independientemente de si el ensamblado ya estaba instalado en la estación de trabajo de secuenciación.

  • El cliente de App-V instala automáticamente los ensamblados SxS necesarios en el equipo cliente en el momento de la publicación, si no están presentes.

  • El secuenciador indica la dependencia del tiempo de ejecución de VC mediante el mecanismo de informes del secuenciador.

  • El secuenciador permite optar por no empaquetar los ensamblados que ya están instalados en el secuenciador, lo que admite escenarios donde los ensamblados se instalaron previamente en los equipos de destino.

Publicación automática de ensamblados SxS

Durante la publicación de un paquete de App-V con ensamblados SxS, el cliente de App-V comprobará la presencia del ensamblado en el equipo. Si no existe, el cliente implementará el ensamblado en el equipo. Los paquetes que forman parte de grupos de conexiones se apoyarán en las instalaciones de ensamblados en paralelo que forman parte de los paquetes de base, ya que el grupo de conexiones no contiene información alguna sobre instalación de ensamblados.

Nota

Al anular la publicación o eliminar un paquete con un ensamblado no se eliminan los ensamblados correspondientes a ese paquete.

Registro del cliente

El cliente de App-V registra información en el Registro de eventos de Windows en el formato estándar ETW. Los eventos específicos de App-V pueden encontrarse en el Visor de eventos, en Applications and Services Logs\Microsoft\AppV\Client.

Nota

En App-V 5.0 SP3, algunos registros se consolidaron y trasladaron a la ubicación siguiente:

Event logs/Applications and Services Logs/Microsoft/AppV/ServiceLog

Para obtener una lista de los registros que se han trasladado, consulte App-V event logs have been consolidated.

Hay tres categorías específicas de eventos registrados que se describen a continuación.

Admin (Administración): Registra los eventos para la aplicación de configuraciones al cliente de App-V y contiene los errores y advertencias principales.

Operational (Operativo): Registra la ejecución general de App-V y el uso de componentes individuales y crea un registro de auditoría de las operaciones de App-V que se han completado en el cliente de App-V.

Virtual Application (Aplicación virtual): Registra inicios de aplicaciones virtuales y el uso de subsistemas de virtualización.

¿Tiene alguna sugerencia sobre App-V?

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

-----
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.
-----