Files
claudetools/clients/cascades-tucson/scripts/check-cse-client.ps1
Howard Enos 8d2ca14cac sync: auto-sync from HOWARD-HOME at 2026-07-17 14:14:41
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-17 14:14:41
2026-07-17 14:15:20 -07:00

24 lines
1.2 KiB
PowerShell

# Check what GP CSEs are registered on this machine
Write-Output "=== Shortcuts CSE registered? ==="
$shortcutCSE = Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\GPExtensions\{BC75B1ED-5833-4858-9BB8-CBF0B166DF9D}" -ErrorAction SilentlyContinue
if ($shortcutCSE) {
Write-Output "YES: $($shortcutCSE.'(default)') DLL: $($shortcutCSE.DllName)"
} else { Write-Output "NOT REGISTERED" }
Write-Output ""
Write-Output "=== All GP Preference CSEs ==="
Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\GPExtensions" | ForEach-Object {
$p = Get-ItemProperty $_.PSPath -ErrorAction SilentlyContinue
$name = $p.'(default)'
if ($name -match 'Preference|Shortcut|File|Folder') {
Write-Output " $($_.PSChildName): $name"
}
}
Write-Output ""
Write-Output "=== Full GP event log (last 30, user policy) ==="
Get-WinEvent -LogName "Microsoft-Windows-GroupPolicy/Operational" -MaxEvents 30 -ErrorAction SilentlyContinue | Where-Object { $_.Message -match 'user|User|loopback|Kiosk|Nurse|failed|error|Extension' -and $_.Level -le 3 } | ForEach-Object {
Write-Output "$($_.TimeCreated) [id=$($_.Id) lvl=$($_.Level)]"
Write-Output " $($_.Message.Substring(0,[Math]::Min(250,$_.Message.Length)))"
}