10Aug

Miks normaalsed tarkvara desinstallid ei võta registrisse kõik asjakohased väärtused?

Kui eemaldate programmi, on mõistlik ootus, et kõik selle jäljed eemaldatakse teie süsteemist, kuid sageli see nii ei ole. Miks nii? Tänane SuperUser Q & post sisaldab vastuseid uudishimuliku lugeja küsimusele.

Tänane küsimus &Vastuste seanss tuleb meile viisakalt SuperUseriga - Q & A veebisaitide kogukonnapõhise grupi Stack Exchange jagunemisest.

ekraanipilt viisakalt wandersickilt( Flickr).

Küsimus

SuperUser-lugeja Mark Boulder soovib teada, miks mõni registriväärtus jääb alati tavapärase tarkvara desinstallimise järel:

SuperUseri teema laiendamine Kuidas eemaldada registri eemaldatud tarkvara jääkide jäljed, miks on see iga kord, kui ma eemaldanprogramm ja seejärel hiljem RegEdit'i kaudu otsima, on see ikka seal?

Miks on enamik Windowsi rakendusi nii kavatsetud jätta registrisse minimaalsed jäljed? Kas süü on Windowsis või arendajatel?

Miks on registriväärtused tavapäraselt tarkvara desinstallimisel tavaliselt "maha jäetud"?

Vastused

SuperUseri kaasautoritele Lukas Riegerile ja Keltarile on meile vastused. Esiteks, Lukas Rieger:

Kuna see on võimatu. Registris on mitu juurpunkti, kuid ainult kaks huvitavat: LocalMachine ja CurrentUser. Tavaliselt kirjutab seadistus väärtused LocalMachine'isse ja töötav programm kirjutab ainult CurrentUserile( tegelikult, välja arvatud juhul, kui seadistamismehhanismid on lubatud, ei saa jooksval programmil LocalMachine'i kirjutada).

Kohaliku masina jääkide hoidmine on laiskus( nagu on näidanud teised vastused), ei ole CurrentUseri osa puhastamine võimalik.

Kui installitakse ükski masin( mis enamus on) ja mitu kasutajat kasutavad seda, mida peaks uninstaller tegema? See võiks turvaliselt eemaldada jooksva konto kasutaja seaded, kuid praegune konto ei pruugi olla teie konto. See juhtub, kui desinstalleri käivitati mitte-administraatori kontolt ja seejärel sisestasite administraatori konto mandaadi, käivitub seadistus selle konto, mitte selle esimese konto alusel.

Mis on teiste kasutajatega? Ta võiks üritada loetleda kõiki kasutajaid, kuid nende registrivõtmeid ei pruugita laadida( Windows on laisk ja laadib ainult vajalikud asjad).

Kuid sa ei tohiks isegi seda proovida. Kui kasutate rändlusprofiile( st terminaliteenuseid) ja seejärel kustutate kõik desinstallimise seaded, võite tõesti segada ja kustutada asju, mida tegelikult veel kasutatakse. Terminaliserver on põhimõtteliselt üks Windowsi masin, kus mitmed kasutajad logivad samal ajal ja kasutavad rakendusi.Ütle, et teil on kaks terminali serverit, kus töötab üks rakendus. Rakenduse TS1-s desinstallige, nüüd on kõigi kasutajate seadeid TS2-le läinud, kuna teil on rändlusprofiilid. Oih.

Sama kehtib ka kasutajate kataloogide failide kohta. Minu firma programmide seadistuses kustutan ühe masina kraami, kuid ärge puudutage kasutaja kasutajaid, isegi mitte kasutaja poolt, kes käivitab seadistust.

Järgneb Keltari vastus:

Sellel on mitu põhjust, kuid see ei ole Microsofti või Windowsi operatsioonisüsteemi süü.

Järgnevalt on toodud mõned juhud ja põhjused, miks registri sissekanded jäid maha:

Bad Programming - arendaja ei kirjutanud rakenduse uninstallerit õigesti ja registri sissekanded jäid maha. Lisaks sellele ei pruugi desinstallija registrikannete eemaldamiseks kasutada / õigeid õigusi kasutada. Võib ka olla, et neid võtmeid kasutab rohkem kui üks rakendus. Näiteks sama rakenduse kaks rakendust, mis kirjutavad samadele võtmetele.

vasakule eesmärgile - Nagu üks kommentaar mainis, oleksid need sissekanded võinud jääda sihtmärgiks. Mõnel rakendusel on katseaeg ja pärast seda perioodi võite rakenduse eemaldada. Kui otsustate rakenduse hiljem uuesti installida, annavad need võtmed rakenduse andmed selle installimise ajal. Lisaks sellele võivad mõned arendajad jätta need võtmed välja juhul, kui otsustate rakenduse uuesti installida. Kui arendaja kasutas kohanduste salvestamiseks registrivõtmeid, võivad nad neid sealt välja jätta, nii et rakenduse taasinstallimisel jäävad kõik teie kohandused püsima. Asja suurte skeemide puhul võtavad registrivõtmed ainult mõne baiti.

Kas peaksite võtmeid eemaldama? See oleneb. Windowsi registri asukoht on ohtlik koht, kus saate segi ajada. Võite kogemata oma süsteemi murda. Väljaminevad võtmed ei kahjusta süsteemi. Mõned ütlevad, et registri puhastamine / defragging kiirendab teie süsteemi, kuid see on korduvalt tõestatud vale.

Kui soovite kindlasti neist programmidest lahti saada, on olemas mõned uninstalleri tööriistad, mis võivad eemaldada kõik programmi jäljed. Need programmid vaatavad teise programmi paigaldajat ja salvestavad kõik failisüsteemis ja registris tehtud toimingud, seejärel eemaldage need toimingud täielikult.Üks probleem nende tööriistadega on see, et nad saavad eemaldada asjad, mida soovite säilitada.

Kas teil on seletamiseks midagi lisada? Helistage kommentaarides. Kas soovite lugeda rohkem vastuseid teistelt tech-savvy Stack Exchange'i kasutajatelt? Tutvu täieliku arutelu teemaga siit.