10Aug

Warum können normale Software-Deinstallationsprogramme nicht alle relevanten Werte aus der Registrierung entfernen?

click fraud protection

Wenn Sie ein Programm deinstallieren, ist es eine "vernünftige" Erwartung, dass alle Spuren davon aus Ihrem System entfernt werden, aber das ist oft nicht der Fall. Warum das? Der heutige SuperUser Q & A Post hat die Antworten auf die Frage eines neugierigen Lesers.

Heutige Frage &Die Antwortsitzung kommt dank SuperUser, einer Unterteilung von Stack Exchange, einer Community-gesteuerten Gruppierung von Q & A-Websites, zu uns.

Screenshot mit freundlicher Genehmigung von wandersick( Flickr).

Die Frage

SuperUser-Lesegerät Mark Boulder möchte wissen, warum einige Registrierungswerte nach einer normalen Software-Deinstallation immer noch vorhanden sind:

Erweiterung des SuperUser-Themas Wie entferne ich Restspuren von nicht installierter Software aus der Registrierung, warum wird sie bei jeder Deinstallation entfernt?ein Programm und dann später über RegEdit nachsehen, ist es immer noch da?

Warum sind die meisten Windows-Anwendungen so darauf aus, winzige Spuren in der Registry zu hinterlassen? Liegt der Fehler bei Windows oder bei den Entwicklern?

instagram viewer

Warum werden Registrierungswerte nach der normalen Deinstallation der Software normalerweise "zurückgelassen"?

Die Antwort

SuperUser Mitwirkende Lukas Rieger und Keltari haben die Antwort für uns. Zuerst, Lukas Rieger:

Weil es unmöglich ist. Die Registrierung verfügt über mehrere Stammknoten, aber nur zwei interessante: LocalMachine und CurrentUser. Normalerweise schreibt das Setup-Programm Werte in LocalMachine, und das laufende Programm schreibt nur in CurrentUser( tatsächlich kann das laufende Programm nicht in LocalMachine schreiben, wenn das Setup nicht mit den Berechtigungen kollidiert).

Während in LocalMachine Reste übrig bleiben( wie die anderen Antworten darauf hinweisen), ist es nicht möglich, den CurrentUser-Teil zu bereinigen.

Wenn ein Programm pro Rechner installiert ist( was die meisten sind) und mehrere Benutzer es verwenden, was sollte der Deinstaller tun? Es könnte die Benutzereinstellungen des aktuellen Kontos sicher entfernen, aber das aktuelle Konto ist möglicherweise nicht Ihr Konto. Dies geschieht, wenn Sie das Deinstallationsprogramm von einem Nicht-Administrator-Konto aus gestartet und dann die Anmeldeinformationen eines Administratorkontos eingegeben haben. Das Setup wird jetzt unter diesem Konto ausgeführt, nicht das erste.

Was ist mit den anderen Benutzern? Es könnte versuchen, alle Benutzer aufzulisten, aber ihre Registrierungsschlüssel möglicherweise nicht geladen( Windows ist faul und lädt nur die Dinge, die es benötigt).

Aber du solltest das nicht einmal versuchen. Wenn Sie servergespeicherte Profile( d. H. Terminaldienste) verwenden und dann alle Einstellungen bei der Deinstallation löschen, könnten Sie wirklich Dinge, die tatsächlich noch verwendet werden, durcheinanderbringen und löschen. Ein Terminalserver ist im Grunde genommen ein Windows-Computer, auf dem sich mehrere Benutzer gleichzeitig anmelden und Anwendungen verwenden. Angenommen, Sie haben zwei Terminalserver, auf denen eine Anwendung ausgeführt wird. Sie deinstallieren die Anwendung auf TS1, jetzt sind alle Einstellungen für alle Benutzer auf TS2, weil Sie servergespeicherte Profile haben. Hoppla.

Dasselbe gilt auch für Dateien in den Benutzerverzeichnissen. Bei der Einrichtung der Programme meiner Firma lösche ich die pro-Computer-Sachen, aber berühre nicht die pro-Benutzer-Sachen, nicht einmal den Benutzer, der gerade das Setup ausführt.

Gefolgt von der Antwort von Keltari:

Es gibt viele Gründe, warum dies der Fall ist, aber es ist nicht die Schuld von Microsoft oder dem Windows-Betriebssystem.

Im Folgenden finden Sie eine Liste einiger Fälle und Gründe, warum Registrierungseinträge zurückgelassen werden:

Ungültige Programmierung - Der Entwickler hat das Deinstallationsprogramm der Anwendung nicht ordnungsgemäß geschrieben, und die Registrierungseinträge bleiben zurück. Darüber hinaus verfügt das Deinstallationsprogramm möglicherweise nicht über die erforderlichen Berechtigungen zum Entfernen der Registrierungseinträge. Es kann auch sein, dass mehr als eine Anwendung diese Schlüssel verwendet. Zum Beispiel, zwei Anwendungen vom gleichen Entwickler, die auf die gleichen Schlüssel schreiben.

Links bei Bedarf - Wie ein Kommentar erwähnt, könnten diese Einträge absichtlich belassen worden sein. Einige Anwendungen haben einen Testzeitraum und nach diesem Zeitraum können Sie die Anwendung möglicherweise entfernen. Wenn Sie die Anwendung zu einem späteren Zeitpunkt erneut installieren, geben diese Schlüssel den Anwendungsinformationen darüber, wann sie installiert wurde. Darüber hinaus können einige Entwickler diese Schlüssel für den Fall, dass Sie die Anwendung neu installieren möchten, beibehalten. Wenn der Entwickler Registrierungsschlüssel zum Speichern Ihrer Anpassungen verwendet hat, werden diese möglicherweise dort belassen, sodass bei einer Neuinstallation der Anwendung alle Anpassungen weiterhin bestehen. In der Regel nehmen Registrierungsschlüssel nur wenige Bytes in Anspruch.

Sollten Sie die Schlüssel entfernen? Das hängt davon ab. Die Windows-Registrierung ist ein gefährlicher Ort, um herumzualbern. Sie können Ihr System versehentlich beschädigen. Das Verlassen der Fremdschlüssel wird das System nicht verletzen. Einige Leute sagen, dass die Reinigung / Defragmentierung der Registrierung Ihr System beschleunigen wird, aber das wurde wiederholt als falsch erwiesen.

Wenn Sie diese Programme wirklich loswerden wollen, gibt es einige Deinstallationstools, die jede Spur eines Programms entfernen können. Diese Programme überwachen das Installationsprogramm eines anderen Programms und zeichnen alle Aktionen auf, die im Dateisystem und in der Registrierung ausgeführt werden, und entfernen dann diese Aktionen vollständig. Ein Problem mit diesen Tools besteht darin, dass sie möglicherweise Dinge entfernen können, die Sie behalten möchten.

Haben Sie etwas zur Erklärung hinzuzufügen? Ton in den Kommentaren ab. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange Benutzern lesen? Sehen Sie sich den vollständigen Diskussionsfaden hier an.