Con il rebranding di VMware Horizon Client in Omnissa Horizon Client, uno degli aspetti spesso sottovalutati è la migrazione delle impostazioni utente.
Nel contesto in cui ho dovuto operare la necessità principale era replicare le impostazioni dell’Horizon Client (dalla versione VMware a quella Omnissa) in un contesto di VDI. Le impostazioni fondamentale da copiare erano quelle del “Drive & Folder Sharing”
In ambienti enterprise – specialmente VDI non persistenti gestiti con Omnissa Dynamic Environment Manager (DEM) – è fondamentale garantire che:
In questo articolo vediamo come migrare automaticamente le impostazioni del client Horizon:
%AppData%\VMware\VMware Horizon View Client
%AppData%\Omnissa\Omnissa Horizon Client
utilizzando uno script PowerShell integrato correttamente in Omnissa DEM.
Prerequisiti
Configurazione di DEM per esportare le personalizzazioni di:
- VMware Horizon Client
- Omnissa Horizon Client
- Chiave di registro di controllo
Precisamente:
Approccio
La soluzione si basa su tre concetti chiave:
La chiave di registro viene salvata nel profilo utente e gestita da DEM, rendendo la soluzione compatibile con:
Script PowerShell
Lo script seguente:
# ==============================
# Omnissa Horizon Client Migration
# ==============================
$SourcePath = Join-Path $env:APPDATA "VMware\VMware Horizon View Client"
$DestinationPath = Join-Path $env:APPDATA "Omnissa\Omnissa Horizon Client"
# Registry key (per-utente)
$RegPath = "HKCU:\Software\Omnissa\Migrations"
$RegName = "HorizonClientSettingsMigrated"
# ---- Controllo se già eseguito ----
if (Test-Path $RegPath) {
$Migrated = Get-ItemProperty -Path $RegPath -Name $RegName -ErrorAction SilentlyContinue
if ($Migrated.$RegName -eq 1) {
exit 0
}
}
# ---- Verifica sorgente ----
if (-not (Test-Path $SourcePath)) {
# Scriviamo comunque la chiave per evitare retry inutili
New-Item -Path $RegPath -Force | Out-Null
New-ItemProperty -Path $RegPath -Name $RegName -Value 1 -PropertyType DWORD -Force | Out-Null
exit 0
}
# ---- Creazione destinazione ----
New-Item -Path $DestinationPath -ItemType Directory -Force | Out-Null
# ---- Copia contenuto ----
Copy-Item -Path "$SourcePath\*" `
-Destination $DestinationPath `
-Recurse `
-Force `
-ErrorAction SilentlyContinue
# ---- Scrittura chiave di completamento ----
New-Item -Path $RegPath -Force | Out-Null
New-ItemProperty -Path $RegPath -Name $RegName -Value 1 -PropertyType DWORD -Force | Out-Null
exit 0
Lo script lo posizioniamo nella share Config di DEM creando una cartella chiamandola script. Nel mio caso
Configurazione in Omnissa DEM
Lo script deve essere configurato come Logon Task per cui dalla console di DEM:
Migrate Horizon Client Settings (VMware → Omnissa)
powershell.exe -ExecutionPolicy Bypass -NoProfile -File \\fs02.pollaio.lan\DEMConfig\Scripts\Migrate-HorizonClientSettings.ps1
Condition (fondamentale)
Qui il video dove replico tutti i passaggi e provo il tutto:
