10Aug

Proč se při normálním odinstalování softwaru nezdaří odebrat všechny relevantní hodnoty z registru?

click fraud protection

Při odinstalaci programu je "rozumné" očekávání, že všechny jeho stopy budou z vašeho systému odstraněny, ale často tomu tak není.Proč je to tak? Dnešní zpráva SuperUser Q & A má odpovědi na otázku zvědavé čtenáře.

dnešní otázka &Odpověď na zasedání se k nám dostala s laskavým svolením SuperUser - podřízenou výměnou Stack Exchange, skupině webů Q & A založených na komunitě.

Screenshot s laskavým svolením wandersick( Flickr).

Otázka

čtečka SuperUser Mark Boulder chce vědět, proč některé hodnoty registru zůstanou vždy po normálním odinstalování softwaru:

Rozšíření o téma SuperUser Jak odstranit zbytky stop odinstalovaného softwaru z registru, proč je to vždy, když odinstalujiprogram a později to prohledat prostřednictvím RegEditu, je tam stále?

Proč je většina aplikací systému Windows tak zamýšlená, aby nechala v registru drobné stopy samy o sobě?Chyba je v systému Windows nebo u vývojářů?

Proč jsou hodnoty registru zpravidla "zaostávány" po normálním odinstalování softwaru?

instagram viewer

Odpovědí odpovědí uživatelů

SuperUser Lukas Rieger a Keltari nám odpovídají.První, Lukas Rieger:

Protože to je nemožné.Registr má více kořenových uzlů, ale pouze dva zajímavé: LocalMachine a CurrentUser. Normálně nastavení zapisuje hodnoty do LocalMachine a běžící program zapíše pouze do CurrentUser( vlastně, pokud instalace neschází s oprávněním, běžící program nemůže zapisovat do LocalMachine).

Při zachování zbytků v LocalMachine je lenost( jak je zdůrazněno v ostatních odpovědích), není možné vyčistit součást CurrentUser.

Pokud je na počítači nainstalován nějaký program( který je většinou) a více uživatelů jej používá, co by mělo provádět odinstalační program? Bezpečné odstranění uživatelských nastavení aktuálního účtu, ale současný účet nemusí být váš účet. K tomu dojde, pokud jste spustili odinstalační program z účtu jiného než administrátora a pak jste zadali pověření administrátorského účtu, nastavení se nyní spouští pod tímto účtem, nikoli prvním.

A co ostatní uživatelé?Může se pokusit vyčíslit všechny uživatele, ale jejich klíče registru nemusí být načteny( Windows je líný a pouze načte věci, které potřebuje).

Ale neměl byste to ani vyzkoušet. Pokud používáte cestovní profily( tj. Terminálové služby) a pak odstraníte všechna nastavení při odinstalaci, můžete opravdu zmást a odstranit věci, které jsou ve skutečnosti ještě používány. Terminálový server je v podstatě jeden počítač se systémem Windows, kde se najednou přihlásí více uživatelů a používají aplikace.Řekněme, že máte dva terminálové servery s jednou aplikací.Odinstalujete aplikaci na serveru TS1, nyní všechna nastavení pro všechny uživatele zmizely v TS2, protože máte roamingové profily. Jejda.

Totéž platí pro soubory v adresářích pro uživatele. Při nastavení programů mé společnosti odstraňuji věci na stroji, ale nedotýkám se uživatelských věcí, a to ani uživatele, který aktuálně spouští nastavení.

Následující odpověď od společnosti Keltari:

Existuje mnoho důvodů, proč tomu tak je, není to však chyba společnosti Microsoft nebo operačního systému Windows.

Níže je uveden seznam některých případů a důvody, proč jsou položky registru zanechány za sebou:

Špatné programování - Vývojář neprovedl správně odinstalování aplikace a položky registru zůstaly pozadu. Kromě toho může odinstalátor pravděpodobně mít / nepoužívat správná oprávnění k odebrání položek registru. Mohlo by také existovat více než jedna aplikace, která tyto klíče používá.Například dvě aplikace od stejného vývojáře, které zapisují do stejných klíčů.

Left For Purpose - Jak bylo uvedeno v jedné poznámce, tyto položky mohly být ponechány účelné.Některé aplikace mají zkušební dobu a po uplynutí této doby se můžete rozhodnout odebrat aplikaci. Pokud se rozhodnete aplikaci znovu nainstalovat později, tyto klíče obsahují informace o aplikaci, kdy byla instalována. Kromě toho se někteří vývojáři mohou rozhodnout opustit tyto klíče v případě, že se rozhodnete přeinstalovat aplikaci. Pokud vývojář použije klíče registru pro ukládání vlastních úprav, může je nechat tam, takže při přeinstalaci aplikace přetrvávají všechna vaše přizpůsobení.Ve velkém schématu věcí klíče registru zabírají pouze několik bajtů.

Máte-li klíče odstranit? To záleží.Registr systému Windows je nebezpečným místem, kde můžete zabalit. Neúmyslně můžete systém přerušit. Odchod z cizích klíčů nepoškodí systém. Někteří lidé budou říkat, že čištění či defragmentace registru urychlí váš systém, ale to se opakovaně ukázalo jako nepravdivé.

Pokud se chcete opravdu zbavit těchto programů, existují některé nástroje pro odinstalování, které mohou odstranit všechny stopy programu. Tyto programy budou sledovat instalační program jiného programu a zaznamenávat všechny akce provedené do systému souborů a registru a poté tyto akce zcela odstranit. Jedním z problémů s těmito nástroji je, že je možné, že mohou odstranit věci, které byste chtěli zachovat.

Musíte něco přidat k vysvětlení?Zní to v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.