Warum werden bei normalen Deinstallationen keine Werte aus der Registrierung entfernt?

20

Erweitert Wie entferne ich verbleibende Spuren von deinstallierter Software aus der Registrierung? - Jedes Mal, wenn ich ein Programm deinstalliere und später über RegEdit nachschlage, ist es immer noch da!

Warum ist die Mehrheit der Windows-Apps so darauf bedacht, kleine Spuren in der Registrierung zu hinterlassen? Liegt es an Windows oder an den Entwicklern?

Mark Boulder
quelle
3
Eine große Gruppe dieser Art von Programmen gehört zu Testprogrammen, die zeitlich begrenzt sind, und danach müssen Sie sie kaufen. Wenn sie unter Windows keine Spuren hinterlassen haben, können Sie die Software nach Ablauf des Testzeitraums einfach deinstallieren und neu installieren und den Testzeitraum zurücksetzen. Es liegt wirklich an den Entwicklern, zu entscheiden, wie sich ihre Programme bei der Deinstallation verhalten sollen. Es gibt Programme und Treibersoftware, die vollständig deinstalliert werden und alles entfernen, was sie bei der Installation hinzufügen.
Verschwörung

Antworten:

30

Weil es unmöglich ist.

Die Registrierung hat mehrere Stammknoten , aber nur zwei interessante: LocalMachine und CurrentUser . Normalerweise schreibt das Setup Werte in LocalMachine, und das ausgeführte Programm schreibt NUR in CurrentUser (tatsächlich kann das ausgeführte Programm nicht in LocalMachine schreiben , es sei denn, das Setup stellt die Berechtigungen in Frage.)

Während das Aufbewahren von Resten in LocalMachine eine Faulheit ist, wie in den anderen Antworten angegeben, ist es nicht möglich, den Benutzerteil zu bereinigen.

Was sollte das Deinstallationsprogramm tun, wenn ein Programm pro Computer installiert ist (welche sind die meisten) und mehrere Benutzer es verwenden? Es könnte die Benutzereinstellungen des aktuellen Kontos sicher entfernen, aber das aktuelle Konto ist möglicherweise nicht Ihr Konto. (Dies passiert, wenn Sie das Deinstallationsprogramm von einem Nicht-Administratorkonto aus gestartet und dann die Anmeldeinformationen eines Administratorkontos eingegeben haben. Das Setup wird nun unter diesem Konto ausgeführt, nicht unter dem ersten.)

Was ist mit den anderen Benutzern? Möglicherweise wird versucht, alle Benutzer aufzulisten, ihre Registrierungsschlüssel werden jedoch möglicherweise nicht geladen. (Windows ist faul und lädt nur die Dinge, die es benötigt.)

Aber du solltest es nicht einmal versuchen. Wenn Sie servergespeicherte Profile verwenden, z. B. für Terminaldienste, und dann alle Einstellungen bei der Deinstallation löschen, können Sie tatsächlich noch verwendete Elemente durcheinander bringen und löschen.

Ein Terminalserver ist im Grunde 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 gelöscht, da Sie über servergespeicherte Profile verfügen. Hoppla.

Gleiches gilt auch für Dateien in den Benutzerverzeichnissen.

Im Setup meines Unternehmensprogramms lösche ich das Pro-Computer-Material, berühre jedoch nicht das Pro-Benutzer-Material, auch nicht den Benutzer, der gerade das Setup ausführt.

Lukas Rieger
quelle
Vergessen Sie auch nicht, dass das Deinstallieren nicht unbedingt das vollständige Entfernen einer App bedeutet: Manchmal deinstallieren Sie Version 1 einer App und installieren dann Version 2 derselben App. In diesem Fall möchten Sie nicht alle Einstellungen verlieren.
Stefan
19

Es gibt viele Gründe, warum dies der Fall ist, es liegt jedoch nicht an Microsoft oder den Windows-Betriebssystemen.

Das Folgende ist eine Liste einiger Fälle und Gründe, aus denen Registrierungseinträge hinterlassen wurden:

  • Schlechte 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, um die Registrierungseinträge zu entfernen. Es kann auch sein, dass es mehr als eine Anwendung gibt, die diese Schlüssel verwendet. Zum Beispiel zwei Anwendungen desselben Entwicklers, die auf dieselben Schlüssel schreiben.

  • Absichtlich gelassen - Wie in einem Kommentar erwähnt, könnten diese Einträge absichtlich gelassen worden sein. Einige Anwendungen haben einen Testzeitraum und nach diesem Zeitraum können Sie die Anwendung entfernen. Wenn Sie die Anwendung später erneut installieren möchten, geben diese Schlüssel die Anwendungsinformationen zum Zeitpunkt der Installation an. Zusätzlich zu , dass, können wählen , einige Entwickler die Schlüssel für den Fall, lassen Sie wählen die Anwendung neu installieren zu. Wenn der Entwickler Registrierungsschlüssel zum Speichern Ihrer Anpassungen verwendet hat, werden diese möglicherweise dort belassen. Wenn Sie also alle Anpassungen neu installieren, bleiben diese bestehen. Im großen Schema belegen Registrierungsschlüssel nur einige Bytes.

Sollten Sie die Schlüssel entfernen? Das hängt davon ab. Die Windows-Registrierung ist ein gefährlicher Ort zum Herumspielen. Sie können versehentlich Ihr System beschädigen. Das Verlassen der fremden Schlüssel schadet dem System nicht. Einige Leute werden sagen, dass das Reinigen / Defragmentieren der Registrierung Ihr System beschleunigt, aber das hat sich wiederholt als falsch erwiesen .

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

Keltari
quelle
Obwohl sie "ein paar Bytes" sind, addieren sich diese Bytes. Dies kann dazu führen, dass die Registrierung langsamer wird, wenn immer mehr nicht verwendete Einträge erstellt werden. Wahrscheinlich nicht relevant für einen "typischen" Benutzer, aber starke Benutzer haben ein größeres Problem. Aus diesem Grund wurde normalerweise empfohlen, Windows alle 6 bis 12 Monate zu aktualisieren / neu zu installieren, um das System "funktionsfähig" zu halten. Programme wie CCleaner können das System länger halten, indem sie die verbleibenden Teile von Apps bereinigen.
Phyrfox
3
@phyrfox wie in meiner Antwort angegeben, sind Registry-Reiniger Schlangenöl. Sie helfen überhaupt nicht.
Keltari,
1
In Win9x-Tagen spielte die Registrierungsgröße eine Rolle und viele veraltete Schlüssel verlangsamten das Betriebssystem. Aber das ist lange her und NT's Regustry ist ein anderes Biest. Allerdings
Beatcracker
10
@phyrfox: "Programme wie CCleaner können das System länger schneller halten" - Nein, das tun sie nicht. "Aus diesem Grund war es üblich, Windows alle 6-12 Monate zu aktualisieren / neu zu installieren, um das System" funktionsfähig "zu halten." - Typisch, weil die Leute nicht wissen, wie sie mit ihren Systemen umgehen sollen. " Ich sitze hier und tippe auf einer 5 Jahre alten Installation, die stark genutzt wurde und bei der es keine nennenswerte Verlangsamung gab. Es sind Empfehlungen wie diese, die Unternehmen dazu bringen, Schlangenöl im Geschäft zu verkaufen.
Karan
1
Ja, die Registrierung ist eigentlich ziemlich schnell (und die häufig verwendeten Stöcke und Schlüssel werden normalerweise im Speicher aufbewahrt). Sogar in den alten Tagen war das größte Problem mit der "aufgeblähten" Registrierung das Problem mit Dingen wie Shell-Erweiterungen und HKCR - sie kamen gleich zurück, sobald Sie die Software, die sie bereitgestellt hat, neu installiert haben. Es ist ziemlich lange her, dass ich das Betriebssystem aus "Leistungsgründen" das letzte Mal neu installiert habe (immer noch unter Windows XP, niemals unter 7).
Luaan
0

Um die verbleibende Registrierung zu entfernen, versuchen Sie es mit dem IOBIT-Deinstallationsprogramm. Es ist bei weitem das beste Deinstallationsprogramm auf dem Markt. Außerdem ist es kostenlos. Ich benutze es die ganze Zeit Wenn der verbleibende Registrierungsschlüssel angezeigt wird, aktivieren Sie das Kontrollkästchen, wenn Sie dazu aufgefordert werden, und die Registrierungsschlüssel werden gelöscht. Iobit wird mit anderen Programmen geliefert. Verwenden Sie einfach das Deinstallationsprogramm, um sie zu entfernen

newtobeingageektech
quelle