Registry-Einträge automatisch löschen
Per Doppelklick auf speziell formatierte Textdateien mit der Endung .reg lassen sich Einträge in die Windows-Registry importieren. In c't 11/2000 hatten wir auf den Hotline-Seiten eine Möglichkeit vorgestellt, bestehende Einträge auf diesem Wege zu löschen - leider nicht ganz richtig.
- Dr. Harald Bögeholz
Per Doppelklick auf speziell formatierte Textdateien mit der Endung .reg lassen sich Einträge in die Windows-Registry importieren. In c't 11/2000 hatten wir auf den Hotline-Seiten eine Möglichkeit vorgestellt, bestehende Einträge auf diesem Wege zu löschen - leider nicht ganz richtig. Hier noch einmal eine korrigierte Fassung.
Um Fehler zu vermeiden, geht man am besten von einer mit Regedit exportierten .reg-Datei aus, die man entsprechend abändert. Darin steht für jeden Schlüssel ein Abschnitt, der mit dem in eckige Klammern gesetzten Schlüsselnamen beginnt und anschließend die Werte unterhalb dieses Schlüssels enthält. Für Zeichenfolgen sieht das etwa so aus:
[HKEY_LOCAL_MACHINE\...\x]
"Name"="Zeichenfolge"
...
Um einen Schlüssel mitsamt allen Werten und Unterschlüsseln zu entfernen, genügt eine Zeile, in der dem Schlüsselnamen zwischen eckigen Klammern ein Minus-Zeichen vorangestellt wird, etwa
[-HKEY_LOCAL_MACHINE\...\x]
Einen einzelnen Wert unterhalb eines Schlüssels löscht ein Minuszeichen (nicht in Anführungszeichen!) anstelle des Wertes:
"Name"=-
Der ‘Standardwert’, den Regedit für jeden Schlüssel als ‘(Standard)’ anzeigt, lässt sich über den speziellen Namen ‘@’ ändern, aber nicht ganz entfernen:
@="neuer Wert"
Um einen bestehenden Standardwert loszuwerden, kann man ihm die leere Zeichenfolge "" zuweisen oder den gesamten Schlüssel wie oben gezeigt löschen. (bo)