Sobre o ambiente virtual do grupo de conexão

Aplica-se a:

  • Windows 10
  • Windows 11

Como a prioridade do pacote é determinada

O ambiente virtual e seu estado atual estão associados ao grupo de conexão, não aos pacotes individuais. Se você remover um pacote do App-V do grupo de conexão, o estado que existia como parte do grupo de conexão não migrará com o pacote.

Se o mesmo pacote fizer parte de dois grupos de conexão diferentes, você deverá indicar qual grupo de conexão o App-V deve usar. Por exemplo, você pode ter dois pacotes em um grupo de conexão em que cada um define o mesmo valor DWORD do registro.

O grupo de conexões usado baseia-se na ordem em que um pacote aparece dentro do documento XML AppConnectionGroup :

  • O primeiro pacote tem a precedência mais alta.
  • O segundo pacote tem a segunda maior precedência.

Considere a seguinte seção de exemplo:

<appv:Packages>
  <appv:Package
    PackageId="A8731008-4523-4713-83A4-CD1363907160"
    VersionId="E889951B-7F30-418B-A69C-B37283BC0DB9"
  />
  <appv:Package
    PackageId="1DC709C8-309F-4AB4-BD47-F75926D04276"
    VersionId="01F1943B-C778-40AD-BFAD-AC34A695DF3C"
  />
  <appv:Package
    PackageId="04220DCA-EE77-42BE-A9F5-96FD8E8593F2"
    VersionId="E15EFFE9-043D-4C01-BC52-AD2BD1E8BAFA"
  />
</appv:Packages>

Suponha que o mesmo valor DWORD ABC (HKEY_LOCAL_MACHINE\software\contoso\finapp\region) seja definido no primeiro e terceiro pacotes.

Para este exemplo, a definição de valor DWORD seria conforme mostrado abaixo:

  • Pacote 1 (A8731008-4523-4713-83A4-CD1363907160): HKEY_LOCAL_MACHINE\software\contoso\finapp\region=5
  • Pacote 3 (04220DCA-EE77-42BE-A9F5-96FD8E8593F2): HKEY_LOCAL_MACHINE\software\contoso\finapp\region=10

Como o Pacote 1 aparece primeiro, o ambiente virtual do AppConnectionGroup terá o valor DWORD único de 5 (HKEY_LOCAL_MACHINE\software\contoso\finapp\region=5). Esse resultado significa que os aplicativos virtuais no Pacote 1, Pacote 2 e Pacote 3 verão o valor 5 quando consultarem HKEY_LOCAL_MACHINE\software\contoso\finapp\region.

Outros recursos do ambiente virtual são resolvidos de maneira semelhante, mas geralmente ocorrem colisões no Registro.

Mesclando caminhos de pacotes idênticos em um diretório virtual em grupos de conexão

Se dois ou mais pacotes em um grupo de conexão contiverem caminhos de diretório idênticos, os caminhos serão mesclados em um único diretório virtual dentro do ambiente virtual do grupo de conexão. A mesclagem desses caminhos permite que um aplicativo em um pacote acesse arquivos que estão em um pacote diferente.

Quando você remove um pacote de um grupo de conexão, os aplicativos do pacote removido não podem mais acessar arquivos de pacotes no grupo de conexão do qual ele foi removido.

O App-V procura o nome de um arquivo no grupo de conexão na ordem em que os pacotes do App-V são listados no arquivo de manifesto do grupo de conexão.

O exemplo a seguir mostra a ordem e a relação de uma pesquisa de nome de arquivo em um grupo de conexão para o Pacote A e o Pacote B.

Pacote A Pacote B
C:\Windows\System32 C:\Windows\System32
C:\AppTest C:\AppTest

Quando um aplicativo virtualizado tenta localizar um arquivo específico, o App-V procura um caminho de arquivo correspondente no Pacote A. Se não encontrar um caminho correspondente no Pacote A, ele pesquisará o Pacote B usando as seguintes regras de mapeamento:

  • Se um arquivo chamado test.txt existir na mesma hierarquia de pastas virtuais em ambos os pacotes de aplicativos, o App-V usará o primeiro arquivo correspondente.
  • Se um arquivo chamado bar.txt existir na hierarquia de pastas virtuais de um pacote de aplicativos, mas não no outro, o App-V usará o primeiro arquivo correspondente.