Programmi eemaldamine registri või PowerShelli abil
Iga paigaldatud programm registreerib registris oma eemalduskäsu. Kui programmi ei õnnestu eemaldada jaotises Sätted → Rakendused või kui see tuleb eemaldada vaikselt, aitab just see käsk.
Kus Windows eemalduskäske hoiab
Kõigile kasutajatele paigaldatud programmid on harus HKLM, 32-bitised programmid 64-bitises Windowsis harus WOW6432Node ja ainult sinu jaoks paigaldatud programmid harus HKCU. Igal programmil on alamvõti väärtustega DisplayName, DisplayVersion, UninstallString ja sageli ka QuietUninstallString.
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\UninstallHKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallPaigaldatud programmide loend PowerShellis
See loeb kõiki kolme asukohta ning näitab nime, versiooni ja eemalduskäske.
$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 DisplayNameKäivita eemalduskäsk
Kui QuietUninstallString on olemas, eemaldab see programmi küsimusteta. Muul juhul käivita UninstallString ja lisa paigaldaja tüübile vastav vaikse töö võti (NSIS-i puhul /S, Inno Setupi puhul /VERYSILENT). MSI-pakettide alamvõtme nimi on ProductCode ja paketi eemaldab msiexec /x.
msiexec /x {PRODUCT-CODE-GUID} /qn /norestart"C:\Program Files\App\uninstall.exe" /SVõi lase seda teha wingetil
winget leiab programmid samadest registrivõtmetest, ka need, mida ta ise ei paigaldanud, ja käivitab nende eemaldaja.
winget listwinget uninstall --name "Programmi nimi"Kui eemaldaja puudub
Kui eemaldaja fail on kustutatud, taastab sama versiooni uuesti paigaldamine selle tavaliselt ja seejärel saab programmi tavapäraselt eemaldada. Kustuta registrikirje käsitsi ainult siis, kui programmi failid on juba kadunud, ja ekspordi võti enne kustutamist.
Korduma kippuvad küsimused
Miks programmi pole jaotises Sätted → Rakendused?
Sätted näitavad ainult kirjeid, millel on DisplayName ja mis pole märgitud süsteemikomponendiks. Portatiivsed programmid ei registreeri midagi ja need eemaldatakse kausta kustutamisega.
Mis on MSI-paketi ProductCode?
GUID, mis tuvastab ühe MSI-paketi. See on programmi alamvõtme nimi asukohas …\Uninstall ja seda näidatakse ka ExeAtlase iga MSI-programmi vaikse paigalduse lehel.