Programm über Registry oder PowerShell deinstallieren
Jedes installierte Programm hinterlegt einen Deinstallationsbefehl in der Registry. Wenn sich ein Programm unter Einstellungen → Apps nicht entfernen lässt oder still entfernt werden soll, führt der Weg über diesen Befehl.
Wo Windows die Deinstallationsbefehle speichert
Programme, die für alle Benutzer installiert sind, stehen unter HKLM, 32-Bit-Programme auf 64-Bit-Windows unter WOW6432Node und Programme, die nur für Sie installiert wurden, unter HKCU. Jedes Programm hat einen Unterschlüssel mit DisplayName, DisplayVersion, UninstallString und oft QuietUninstallString.
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\UninstallHKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallInstallierte Programme mit PowerShell auflisten
Diese Befehle lesen alle drei Orte aus und zeigen Name, Version und Deinstallationsbefehle an.
$keys = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*", "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*", "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*"Get-ItemProperty $keys | Where-Object DisplayName | Select-Object DisplayName, DisplayVersion, UninstallString, QuietUninstallString | Sort-Object DisplayNameDen Deinstallationsbefehl ausführen
Ist QuietUninstallString vorhanden, entfernt dieser Befehl das Programm ohne Rückfragen. Andernfalls führen Sie UninstallString aus und ergänzen den stillen Parameter des Installer-Typs (/S bei NSIS, /VERYSILENT bei Inno Setup). Bei MSI-Paketen ist der Name des Unterschlüssels der ProductCode, und msiexec /x entfernt das Paket.
msiexec /x {PRODUCT-CODE-GUID} /qn /norestart"C:\Program Files\App\uninstall.exe" /SOder winget erledigen lassen
winget findet Programme in denselben Registry-Schlüsseln, auch solche, die nicht mit winget installiert wurden, und startet deren Deinstallationsprogramm.
winget listwinget uninstall --name "Programmname"Wenn das Deinstallationsprogramm fehlt
Wurde die Deinstallationsdatei gelöscht, repariert eine erneute Installation derselben Version sie meist; danach lässt sich das Programm normal entfernen. Löschen Sie einen Registry-Eintrag nur dann von Hand, wenn die Programmdateien bereits weg sind, und exportieren Sie den Schlüssel vorher.
Häufige Fragen
Warum erscheint ein Programm nicht unter Einstellungen → Apps?
Die Einstellungen zeigen nur Einträge mit einem DisplayName, die nicht als Systemkomponente markiert sind. Portable Programme tragen nichts ein; sie werden entfernt, indem man ihren Ordner löscht.
Was ist der ProductCode eines MSI?
Eine GUID, die genau ein MSI-Paket kennzeichnet. Sie ist der Name des Unterschlüssels unter …\Uninstall und steht bei jedem MSI-Programm auf ExeAtlas auf der Silent-Install-Seite.