Verbesserte Version meines Icon-Cache-Scripts, jetzt in PowerShell und allgemeingültig für alle Shells und unterstützten NTs:
Code
[Environment]::GetFolderPath('LocalApplicationData') | pushd
rm -ErrorAction:SilentlyContinue -Force IconCache.db
popd
$shell = (gp 'HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Winlogon').Shell
if ($shell -eq $NULL) {
$shell = (gp 'HKLM:\Software\Microsoft\Windows NT\CurrentVersion\Winlogon').Shell
}
# unix equivalent: shellproc=`basename $shell`
$shellproc = (Split-Path -Leaf $shell)
if ($shellproc.ToLower().EndsWith('.exe')) {
$shellproc = $shellproc.Substring(0, $shellproc.Length - 4)
}
kill -Name $shellproc
sleep 2
# if shell not restarted by session manager
if ((ps -ErrorAction:SilentlyContinue $shell) -ne $NULL) {
start $shell
}
Alles anzeigen