Import-Module ActiveDirectory $kioskGuid = '32d76052-4d92-446c-95fb-614653f84742' $dn = "CN={$kioskGuid},CN=Policies,CN=System,DC=cascades,DC=local" # {C418DD9D-0D14-4efb-8FBF-CFE535C8FAC7} = Group Policy Shortcuts CSE (verified in client registry) # {0F6B957D-509E-11D1-A7CC-0000F87571E3} = GPMC tool snap-in $cse = '[{C418DD9D-0D14-4efb-8FBF-CFE535C8FAC7}{0F6B957D-509E-11D1-A7CC-0000F87571E3}]' Set-ADObject $dn -Replace @{gPCUserExtensionNames=$cse} Write-Output "CSE set: $((Get-ADObject $dn -Properties gPCUserExtensionNames).gPCUserExtensionNames)" $gptPath = "\\cascades.local\SYSVOL\cascades.local\Policies\{$kioskGuid}\GPT.INI" $ini = Get-Content $gptPath -Raw $ini = $ini -replace 'gPCUserExtensionNames=.*', "gPCUserExtensionNames=$cse" if ($ini -match 'Version=(\d+)') { $ver = [int]$matches[1]; $newVer = ((($ver -shr 16)+1) -shl 16) -bor ($ver -band 0xFFFF) $ini = $ini -replace "Version=\d+", "Version=$newVer" } Set-Content $gptPath $ini -Force Get-Content $gptPath