Group Policy settings not applying
Symptoms
- A policy you set in the GPO isn't reflected in Deck.
- The Deck UI doesn't show the managed by IT indicator you expect.
- Some settings apply but others don't.
Solutions
Confirm the values reached the client
Policy lands in the registry. Read it directly on the affected machine:
Get-ItemProperty "HKLM:\SOFTWARE\Policies\Vediram\Deck" -ErrorAction SilentlyContinue
Get-ItemProperty "HKCU:\SOFTWARE\Policies\Vediram\Deck" -ErrorAction SilentlyContinue
Get-ItemProperty "HKLM:\SOFTWARE\Policies\Vediram\Deck\ManagedExtensions" -ErrorAction SilentlyContinue
If the value isn't there, the problem is Group Policy delivery, not Deck. If it is there but Deck ignores it, restart Deck (below).
Refresh policy and restart Deck
Deck reads policy when the Core daemon starts, not continuously. After a GPO change:
gpupdate /force
Stop-Process -Name Vediram.Deck.Core, Vediram.Deck -Force -ErrorAction SilentlyContinue
Then relaunch Deck.
Check scope - machine vs. user
AutoStartis user-scoped only; setting it under Computer Configuration has no effect.ManagementModeand the Managed Extensions settings are machine-scoped only; setting them under User Configuration has no effect.- When the same setting is configured in both hives, machine (
HKLM) wins over user (HKCU) - a user-scope value you expect may be overridden by a machine-scope one.
See the Policy Reference for each setting's scope.
Verify GPO targeting
Confirm the GPO is linked to the OU containing the target computer or user, security-filtered to include them, and (for user-scoped settings) that the user object is in scope. gpresult /h report.html shows which GPOs actually applied.
Verify the ADMX templates are present
If the settings don't appear in the editor at all, the templates aren't installed. Confirm Vediram.admx and en-US\Vediram.adml are in the central store (\\<domain>\SYSVOL\<domain>\Policies\PolicyDefinitions\) or the local C:\Windows\PolicyDefinitions\. See Group Policy Setup.
Check the daemon log
core.log records how many policies were loaded at startup:
Select-String -Path "$env:LOCALAPPDATA\Vediram\Deck\core.log" -Pattern "\[Policy\]"