Avinstaller et program via registeret eller PowerShell
Hvert installerte program registrerer en avinstalleringskommando i registeret. Når Innstillinger → Apper ikke klarer å fjerne et program, eller når det skal fjernes stille, er det denne kommandoen som gjelder.
Hvor Windows lagrer avinstalleringskommandoene
Programmer installert for alle brukere ligger under HKLM, 32-biters programmer på 64-biters Windows under WOW6432Node, og programmer installert bare for deg under HKCU. Hvert program har en undernøkkel med DisplayName, DisplayVersion, UninstallString og ofte QuietUninstallString.
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\UninstallHKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallList opp installerte programmer med PowerShell
Dette leser alle tre plasseringene og viser navn, versjon og avinstalleringskommandoer.
$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 DisplayNameKjør avinstalleringskommandoen
Finnes QuietUninstallString, fjerner den programmet uten spørsmål. Ellers kjører du UninstallString og legger til den stille parameteren for installasjonstypen (/S for NSIS, /VERYSILENT for Inno Setup). For MSI-pakker er navnet på undernøkkelen pakkens ProductCode, og msiexec /x fjerner den.
msiexec /x {PRODUCT-CODE-GUID} /qn /norestart"C:\Program Files\App\uninstall.exe" /SEller la winget gjøre jobben
winget finner programmer i de samme registernøklene, også de den ikke installerte selv, og kjører avinstalleringsprogrammet deres.
winget listwinget uninstall --name "Programnavn"Når avinstalleringsprogrammet mangler
Er avinstalleringsfilen slettet, hjelper det som regel å installere samme versjon på nytt først; deretter kan programmet fjernes som normalt. Slett en registeroppføring for hånd bare når programfilene allerede er borte, og eksporter nøkkelen før du sletter den.
Ofte stilte spørsmål
Hvorfor vises ikke et program under Innstillinger → Apper?
Innstillinger viser bare oppføringer som har et DisplayName og ikke er merket som systemkomponenter. Portable programmer registrerer aldri noe og fjernes ved å slette mappen deres.
Hva er ProductCode for en MSI-pakke?
En GUID som identifiserer én bestemt MSI-pakke. Den er navnet på programmets undernøkkel under …\Uninstall og vises på siden om stille installasjon for hvert MSI-program på ExeAtlas.