10Aug

Prečo sa pri normálnom odinštalovaní softvéru nezdarí odstránenie všetkých relevantných hodnôt z registra?

click fraud protection

Keď odinštalujete program, je to "rozumné" očakávanie, že všetky jeho stopy budú odstránené z vášho systému, ale často to tak nie je. Prečo to je? Dnešný príspevok SuperUser Q & A má odpovede na otázku zvedavého čitateľa.

Dnešná otázka &Odpoveď na zasadnutie nám príde s láskavým dovolením SuperUser - subdivíziu Stack Exchange, komunitne riadeného zoskupenia webových stránok Q & A.

Screenshot s láskavým dovolením wandersick( Flickr).

Otázka

čítačka SuperUser Mark Boulder chce vedieť, prečo niektoré hodnoty databázy Registry vždy zostávajú po normálnom odinštalovaní softvéru:

Rozširovanie témy SuperUser Ako odstrániť zvyškové stopy odinštalovaného softvéru z registra, prečo je to vždy, keď odinštalujemprogram a neskôr ho pozrieť cez RegEdit, stále je tam?

Prečo je väčšina aplikácií systému Windows taký zámer, že necháva v registri drobné stopy sami? Vyskytuje sa chyba v systéme Windows alebo s vývojármi?

Prečo sú hodnoty registrov zvyčajne "zaostávajú" po normálnej odinštalácii softvéru?

instagram viewer

Odpovedia na odpovede

SuperUser Lukas Rieger a Keltari. Po prvom, Lukas Rieger:

Pretože to nie je možné.Registry majú viacero koreňových uzlov, ale iba dve zaujímavé: LocalMachine a CurrentUser. Normálne nastavenie zapíše hodnoty do LocalMachine a bežiaci program zapíše iba do CurrentUser( v skutočnosti, ak inštalácia nezmení s oprávneniami, bežiaci program nemôže zapisovať do LocalMachine).

Pri zachovaní zvyškov v LocalMachine je lenivosť( ako to zdôrazňujú ostatné odpovede), nie je možné vyčistiť časť CurrentUser.

Ak je nainštalovaný program na jeden stroj( čo je najviac) a na viacerých používateľov ho používa, čo by mal odinštalátor robiť?Môže sa bezpečne odstrániť používateľské nastavenia aktuálneho účtu, ale aktuálny účet nemusí byť váš účet. K tomu dôjde, ak ste spustili odinštalačný program z účtu, ktorý nie je administrátorom, a potom ste zadali poverenia účtu administrátora, inštalácia sa teraz spúšťa pod týmto účtom, a nie prvým.

A čo ostatní používatelia? Mohlo by sa pokúsiť vymenovať všetkých používateľov, ale ich kľúče databázy Registry sa nemusia načítať( Windows je lenivý a načíta iba to, čo potrebuje).

Ale nemali by ste to ani vyskúšať.Ak používate cestovné profily( t. J. Terminálové služby) a potom odstrániť všetky nastavenia odinštalovania, mohli by ste naozaj narušiť a odstrániť skutočne používané veci. Terminálový server je v podstate jeden počítač so systémom Windows, v ktorom sa viacerí používatelia prihlásia súčasne a používajú aplikácie. Povedzme, že máte dva terminálové servery s jednou aplikáciou. Odinštalujete aplikáciu na TS1, teraz sú všetky nastavenia pre všetkých používateľov zmazané na TS2, pretože máte roamingové profily. Oops.

To isté platí aj pre súbory v adresároch pre používateľov. Pri nastavovaní programov mojej firmy som vymazal všetky položky zariadenia, ale nedotýkal sa používateľských záležitostí, ani používateľov, ktoré v súčasnosti používajú nastavenie.

Nasledujúca odpoveď od spoločnosti Keltari:

Existuje mnoho dôvodov, prečo je to tak, ale nie je to chyba spoločnosti Microsoft alebo operačného systému Windows.

Nasleduje zoznam niektorých prípadov a dôvody, prečo sú položky databázy Registry zaneprázdnené:

Zlé programovanie - vývojár nepípal správne program na odinštalovanie aplikácie a položky databázy registry zostali za sebou. Navyše, odinštalátor nemusí mať / použiť správne oprávnenia na odstránenie položiek databázy Registry. Mohlo by tiež existovať viac aplikácií, ktoré používajú tieto kľúče. Napríklad dve aplikácie od toho istého vývojára, ktoré zapisujú do rovnakých kľúčov.

Left For Purpose - Ako sa spomína jedna poznámka, tieto záznamy by mohli zostať účelné.Niektoré aplikácie majú skúšobné obdobie a po uplynutí tohto obdobia sa môžete rozhodnúť odstrániť aplikáciu. Ak sa rozhodnete aplikáciu opätovne nainštalovať, tieto kľúče obsahujú informácie o aplikácii, kedy bola nainštalovaná.Okrem toho sa niektorí vývojári môžu rozhodnúť opustiť tieto klávesy v prípade, že sa rozhodnete preinštalovať aplikáciu. Ak vývojár použil kľúče databázy Registry na ukladanie vašich prispôsobení, mohol by ich nechať tam, takže pri preinštalovaní aplikácie pretrvávajú všetky prispôsobenia. Vo veľkom systéme vecí, kľúče databázy Registry trvajú len niekoľko bajtov.

Máte odstrániť kľúče? To záleží.Registry systému Windows sú nebezpečným miestom, kde môžete zabrať. Môžete neúmyselne zlomiť systém. Opustenie cudzích kľúčov nepoškodí systém. Niektorí ľudia budú hovoriť, že čistenie / defragmentácia registra urýchli váš systém, ale to bolo opakovane potvrdené.

Ak sa naozaj chcete zbaviť týchto programov, existujú niektoré nástroje na odinštalovanie, ktoré dokážu odstrániť všetky stopy programu. Tieto programy budú sledovať inštalačný program iného programu a zaznamenávať všetky činnosti vykonané do súborového systému a registra a potom úplne odstrániť tieto akcie. Jedným z problémov s týmito nástrojmi je, že je možné, že môžu odstrániť veci, ktoré by ste mohli chcieť zachovať.

Máte čo pridať k vysvetleniu? Znížte komentáre. Chcete si prečítať viac odpovedí od iných používateľov technológie Stack Exchange? Pozrite sa na celý diskusný príspevok tu.