Acerca do ambiente virtual do grupo de ligações no App-V 5.1
Este artigo abrange as seguintes informações:
Como a prioridade do pacote é determinada
O ambiente virtual e o respetivo estado atual estão associados ao grupo de ligação e não aos pacotes individuais. Se um pacote App-V for removido do grupo de ligação, o estado que existia como parte do grupo de ligação não será migrado com o pacote.
Se o mesmo pacote fizer parte de dois grupos de ligação diferentes, tem de indicar que grupo de ligação o App-V deve utilizar. Por exemplo, pode ter dois pacotes num grupo de ligação que definem cada um o mesmo valor DWORD do registo.
O grupo de ligação que o cliente utiliza baseia-se na ordem pela qual um pacote aparece no documento XML AppConnectionGroup :
O primeiro pacote tem a precedência mais alta.
O segundo pacote tem a segunda precedência mais alta.
Considere a seguinte secção de exemplo:
<appv:Packages><appv:PackagePackageId="A8731008-4523-4713-83A4-CD1363907160"VersionId="E889951B-7F30-418B-A69C-B37283BC0DB9"/><appv:PackagePackageId="1DC709C8-309F-4AB4-BD47-F75926D04276"VersionId="01F1943B-C778-40AD-BFAD-AC34A695DF3C"/><appv:PackagePackageId="04220DCA-EE77-42BE-A9F5-96FD8E8593F2"VersionId="E15EFFE9-043D-4C01-BC52-AD2BD1E8BAFA"/></appv:Packages>
Suponha que o mesmo valor ABC
DWORD (HKEY_LOCAL_MACHINE\software\contoso\finapp\region
) está definido no primeiro e terceiro pacote, como:
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
Uma vez que o Pacote 1 aparece primeiro, o ambiente virtual do AppConnectionGroup tem o valor DWORD único de 5
(HKEY_LOCAL_MACHINE\software\contoso\finapp\region=5
). Isto significa que as aplicações virtuais no Pacote 1, Pacote 2 e Pacote 3 verão o valor 5
quando consultarem para HKEY_LOCAL_MACHINE\software\contoso\finapp\region
.
Outros recursos de ambiente virtual são resolvidos da mesma forma, mas o caso habitual é que as colisões ocorrem no registo.
Intercalar caminhos de pacotes idênticos num único diretório virtual em grupos de ligação
Se dois ou mais pacotes num grupo de ligação contiverem caminhos de diretório idênticos, os caminhos são intercalados num único diretório virtual dentro do ambiente virtual do grupo de ligações. Esta intercalação de caminhos permite que uma aplicação num pacote aceda a ficheiros que estão num pacote diferente.
Quando remove um pacote de um grupo de ligação, as aplicações nesse pacote removido já não conseguem aceder aos ficheiros nos pacotes restantes no grupo de ligação.
A ordem pela qual o App-V procura o nome de um ficheiro no grupo de ligação é especificada pela ordem pela qual os pacotes app-V estão listados no ficheiro de manifesto do grupo de ligação.
O exemplo seguinte mostra a ordem e a relação de uma pesquisa de nome de ficheiro num grupo de ligação para o Pacote A e o Pacote B.
Pacote A | Pacote B |
---|---|
C:\Windows\System32 | C:\Windows\System32 |
C:\AppTest | C:\AppTest |
Neste exemplo, quando uma aplicação virtualizada tenta localizar um ficheiro específico, o Pacote A é procurado primeiro por um caminho de ficheiro correspondente. Se não for encontrado um caminho correspondente, o Pacote B é pesquisado com as seguintes regras de mapeamento:
Se existir um ficheiro com o nome test.txt na mesma hierarquia de pastas virtuais em ambos os pacotes de aplicações, é utilizado o primeiro ficheiro correspondente.
Se existir um ficheiro com o nome bar.txt na hierarquia de pastas virtuais de um pacote de aplicação, mas não no outro, é utilizado o primeiro ficheiro correspondente.