Import-Module GroupPolicy # Identify which GPO this is $gpo = Get-GPO -Guid '3B5CD9A6-A278-4676-A9FD-9396D21A8261' Write-Output "GPO: $($gpo.DisplayName) (ID: $($gpo.Id))" Write-Output "Status: $($gpo.GpoStatus)" # Remove the GPP Shortcuts.xml (stops it recreating shortcuts on login) $path = "\\cascades.local\SYSVOL\cascades.local\Policies\{3B5CD9A6-A278-4676-A9FD-9396D21A8261}\User\Preferences\Shortcuts\Shortcuts.xml" if (Test-Path $path) { Remove-Item $path -Force Write-Output "REMOVED: $path" # Clean up empty dir $dir = Split-Path $path if ((Get-ChildItem $dir -ErrorAction SilentlyContinue).Count -eq 0) { Remove-Item $dir -Force Write-Output "Cleaned empty Shortcuts dir" } } else { Write-Output "Already removed" } # Bump GPO version so clients pick up the change # Read current version, increment user version $gpoPath = "\\cascades.local\SYSVOL\cascades.local\Policies\{3B5CD9A6-A278-4676-A9FD-9396D21A8261}\GPT.INI" $ini = Get-Content $gpoPath -Raw Write-Output "" Write-Output "GPT.INI before:" Write-Output $ini # Parse version: low 16 bits = computer, high 16 bits = user if ($ini -match 'Version=(\d+)') { $ver = [int]$matches[1] $userVer = ($ver -shr 16) + 1 $compVer = $ver -band 0xFFFF $newVer = ($userVer -shl 16) -bor $compVer $ini = $ini -replace "Version=\d+", "Version=$newVer" Set-Content $gpoPath $ini -Force Write-Output "GPT.INI after (version $ver -> $newVer):" Write-Output $ini } # Also clean the per-user desktop shortcuts one more time Get-ChildItem "C:\Users" -Directory | Where-Object { $_.Name -notin 'Public','Default','Default User','All Users' } | ForEach-Object { $desk = Join-Path $_.FullName "Desktop" foreach ($f in 'ALIS.url','Helpany.url','PharmCare.url','LinkRx.url') { $p = Join-Path $desk $f if (Test-Path $p) { Remove-Item $p -Force } } } Write-Output "" Write-Output "Cleaned per-user desktop shortcuts"