Registry auslesen mit Platzhaltern?

Moin,

ich möchte die folgenden Registrierungs-Schlüssel durchtackern und dort jeweils Informationen auslesen:

HKEY\_CLASSES\_ROOT\.386
...
HKEY\_CLASSES\_ROOT\.jpg
...
HKEY\_CLASSES\_ROOT\.zme

Das Problem ist nun, dass ich natürlich nicht weiß, welche Schlüssel es alle gibt. Es läuft also auf die Frage hinaus, ob man irgendwie auf Schlüssel zugreifen kann, deren Namen man nicht genau kennt, also so, wie man z.B. auf alle oder bestimmte Files in einem Verzeichnis zugreift, indem man die Files-Auflistung abfragt oder Platzhalter verwendet.

Danke für Hinweise,
Kristian

natürlich nicht weiß, welche Schlüssel es alle gibt. Es läuft
also auf die Frage hinaus, ob man irgendwie auf Schlüssel
zugreifen kann, deren Namen man nicht genau kennt, also so,
wie man z.B. auf alle oder bestimmte Files in einem
Verzeichnis zugreift, indem man die Files-Auflistung abfragt
oder Platzhalter verwendet.

Hallo Kristian,
schau mal da ganz unten auf der Seite nach der regtools.zip-Datei:
http://www.gssg.de/vbregistry.htm
Auf die Seite stiess ich durch:
http://groups.google.de/groups?hl=de&q=Regobj.dll+&q…
Wahrscheinlich brauchst du die Regobj.dll

Auch auf http://cwashington.netreach.net/
soll es was zum Registry Auslesen geben, mit WMI, was immer das ist.
Ich fand dies aber auf die Schnelle nicht.
Gruß
Reinhard

Danke, da schau ich mal rein. Habe aber gerade in meinem API-Guide noch „RegEnumKeyEx“ gefunden. Das werde ich mir erstmal genauer anschauen. Denke mal, in dem von Dir genannten Projekt wird es auch damit gemacht.

Danke!
Kristian

Danke, da schau ich mal rein. Habe aber gerade in meinem
API-Guide noch „RegEnumKeyEx“ gefunden. Das werde ich mir
erstmal genauer anschauen. Denke mal, in dem von Dir genannten
Projekt wird es auch damit gemacht.

Hallo Kristian,
anderer Ansatz, da diese Namensinformationen ja in der Registry stehen, wollte ich wissen welche Dateien die Registry bilden, um diese ggfs wenn möglich auszulesen.
Siehe dazu mein Posting im Brett WinXP.
Früher stand das in den Dateien user.dat und system.dat.
Die Datei „System“ habe ich gefunden, sie hat so 3 MB. Aber eine Sicherung meiner Registry erzeugt eine Datei von 41 MB.
Scheinbar ist die u.a. so groß weil zwischen jedes Byte ein „00“ gesetzt wird. Mir unklar warum.
Abgesehen davon stehen die Einträge im Klartext, müßten also herauslesbar sein.
Die Datei „user“ o.ä. bin ich noch am Suchen.
Gruß
Reinhard

Das mit dem Enum hat wunderbar funktioniert, und es läuft auch. War zwar bissl aufwendiger als ich dachte, aber wie gesagt, nun ist es fertig (realisiert mit Excel, wie so oft).

Habe gerade gesehen, dass der entsprechende Dialog bei XP ja wenigstens schon ein bisschen anwenderfreundlicher geworden ist als er bei 98 war. Immerhin kann man nach den Erweiterungen sortieren :wink:

Eine Sache will ich bei dem Tool nur noch ergänzen: Die Überprüfung, ob die angegebenen Exe-Files überhaupt noch existieren.

Kristian

Hallo Kristian,
schön dass es klappt. Wenn du im Zuge deiner Recherchen über Code stolperst mit dem ich die Registry ändern kann im folgenden Punkt, dann gebe mir den bitte.
Mein Browser, Firefox, bei Klick auf den Pfeil in der Adresszeile, werden Links zu besuchten Seiten angezeigt.
Die Reihenfolge und dei Speicherlogik passt mir nicht.
Diese Einträge stehen in der Registry und ich würde sie gerne mittels Vba abändern nach meinen Wünschen.
Gruß
Reinhard

Der Code ist überhaupt kein Problem. Einfaches Auslesen oder Verändern bestimmter Schlüssel habe ich schon häufig gemacht, es fehlte nur die Enum-Geschichte, die mir bislang nicht aufgefallen war, weil ich sie nicht brauchte.

Ich verweise dazu mal auf den folgenden Artikel von Peter weiter unten:

http://www.wer-weiss-was.de/cgi-bin/forum/showarticl…

Der API-Guide ist wirklich gut. Ich hatte vor ein paar Jahren schon einmal sowas in der Art, war aber nicht ganz so gut wie dieser.

Kristian