Client graphics settings
Supported on: All Citrix Workspace supported platforms
Description
This option enables the quality of graphics displayed by the remote application or desktop. From the color-depth drop down menu, select the preferred range. The available options are 16-bit color and 32-bit color. NOTE: Low color depth is more effective when using low bandwidth. Enable 'Disk based caching' to allow the graphics to be temporarily saved to the local disc cache. Enable Lossy compression to degrade the quality of graphics for maximum compression and responsiveness. Enable HDX 3D Browser acceleration to allow Microsoft IE to be handled by HDX 3D virtual acceleration channel. Enable HDX 3D browser acceleration lossy compression to allow Microsoft IE to degrade the quality of graphics for maximum compression and responsiveness. Enable Remote Video to allow the server to stream video data to the client.
Registry
Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics REG Builder
BETAConfigure the state and elements to generate .reg, PowerShell, Intune, and SCCM outputs.
These exports replicate the policy's registry effect. Editing the registry directly is not the same as applying the GPO through the management console (no gpupdate, no central reporting). Test before production; HKLM changes require administrator rights.
.reg file
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: Client graphics settings
; State: Enabled
; Supported on: All Citrix Workspace supported platforms
[HKEY_CURRENT_USER\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics]
"DesiredColor"="8"
"PersistentCacheEnabled"=dword:00000000
"SpeedScreenIA"=dword:00000001
"SpeedScreenBA"=dword:00000001
"SpeedScreenBACompressionEnabled"=dword:00000001
"SpeedScreenMMA"=dword:00000001
"ZLKeyboardMode"=dword:00000001
"ZLMouseMode"=dword:00000001 PowerShell
# Exported from gporais.com
# Policy: Client graphics settings
# State: Enabled
# Supported on: All Citrix Workspace supported platforms
$path = 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'DesiredColor' -Value '8' -Type String
Set-ItemProperty -Path $path -Name 'PersistentCacheEnabled' -Value 0 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenIA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenBA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenBACompressionEnabled' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenMMA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'ZLKeyboardMode' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'ZLMouseMode' -Value 1 -Type DWord Intune XML
No direct Policy CSP / OMA-URI mapping for this policy. Use the Intune Remediation tab, or ingest the ADMX in Intune. Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Client graphics settings
# State: Enabled
# Supported on: All Citrix Workspace supported platforms
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'DesiredColor' -Expected '8' -Kind String)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'PersistentCacheEnabled' -Expected 0 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenIA' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenBA' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenBACompressionEnabled' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenMMA' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'ZLKeyboardMode' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'ZLMouseMode' -Expected 1 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Client graphics settings
# State: Enabled
# Supported on: All Citrix Workspace supported platforms
$path = 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'DesiredColor' -Value '8' -Type String
Set-ItemProperty -Path $path -Name 'PersistentCacheEnabled' -Value 0 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenIA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenBA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenBACompressionEnabled' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenMMA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'ZLKeyboardMode' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'ZLMouseMode' -Value 1 -Type DWord SCCM CI
# Exported from gporais.com
# Policy: Client graphics settings
# State: Enabled
# Supported on: All Citrix Workspace supported platforms
# SCCM Configuration Item guidance:
# Create a Configuration Item of type "Setting: Script".
# Discovery script: use the Detection script below.
# Remediation script: use the Remediation script below.
# Compliance rule: the Discovery script output equals 'Compliant'.
# === Detection script ===
# Exported from gporais.com
# Policy: Client graphics settings
# State: Enabled
# Supported on: All Citrix Workspace supported platforms
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'DesiredColor' -Expected '8' -Kind String)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'PersistentCacheEnabled' -Expected 0 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenIA' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenBA' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenBACompressionEnabled' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'SpeedScreenMMA' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'ZLKeyboardMode' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics' -Name 'ZLMouseMode' -Expected 1 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Client graphics settings
# State: Enabled
# Supported on: All Citrix Workspace supported platforms
$path = 'HKCU:\Software\Policies\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Thinwire Graphics'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'DesiredColor' -Value '8' -Type String
Set-ItemProperty -Path $path -Name 'PersistentCacheEnabled' -Value 0 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenIA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenBA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenBACompressionEnabled' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'SpeedScreenMMA' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'ZLKeyboardMode' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'ZLMouseMode' -Value 1 -Type DWord