Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert sind; Die von diesem Forum gesetzten Cookies düfen nur auf dieser Website verwendet werden und stellen kein Sicherheitsrisiko dar. Cookies auf diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Suche nach Registryeinträgen einer bestimmten Software in HKLM
#1
Frage erledigt 
Hallo,

ich habe ein keines Tool geschrieben, mit dem ich rekursiv alle Einträge einer bestimmten Software aus der Registry auslesen kann. Wie kann ich es nun schaffen, wie es der Export aus der Registry es kann, die gefundenen Einträge mit allen Schlüsseln wie es die Registry auch tut, zu exportieren? Der Export soll mit allen gefundenen Einträgen in eine einzige .txt und .reg Datei geschrieben werden. Allerdings eben so wie es die Registry exportiert und nicht wie in meinem Beispielcode zu sehen ist.

Anbei mein Code. Es wäre klasse wenn  mir weitergeholfen werden könnte.

Show ContentRegSearch:

Ferner möchte ich jetzt mal der erste sein, der hier eine Frage stellt Smile . Die Forensoftware und das Erscheinungsbild dieses Forums finde ich klasse.
Zitieren
#2
Das war jetzt eine Herausforderung, weil ich vom Export-/Importformat von RegEdit keine Ahnung habe.
Zu einigen Registry-Typen konnte ich auch nicht das passende Format herausfinden (mit Kommentar im Script).
Ansonsten habe ich Dir mal das Script etwas angepasst (kommentiert):

Show ContentScript:


Angehängte Dateien
.au3   RegSearch.au3 (Größe: 8,01 KB / Downloads: 5)
Hinweise:
Ich benutze für den Arduino die Arduino-IDE.
Für AutoIt benutze ich die aktuelle AutoIt-Version sowie SciTE4AutoIt3.
Eine Hilfe kann ich nur auf Basis dieser Software leisten.
Zitieren
#3
Hallo Gorathan,

vielen Dank für die Ergänzung und Verbesserung des Codes und die gleichsam wichtigen Verbesserungshinweise. Es funktioniert bestens mit Deinem Code. Herzlichen Dank.


Zitat:Zu einigen Registry-Typen konnte ich auch nicht das passende Format herausfinden (mit Kommentar im Script).

Das muss mal getestet werden. Ich hätte gar nicht gewusst wie man da weitermachen hätte können.

Vielen Dank nochmal! Smile

Eine Frage noch:
Was meinst Du? Wäre es denn sinvoll, dass mit mit dem Skript zusätzlich zum auslesen der Einträge noch auf Benutzerwunsch die entsprechenden Einträge aus der Registry entfernen lassen kann oder ist das eher naiv gedacht? Der Startbutton ist ja eher groß. Da passen locken 2 hin Rolleyes . Somit könnte man sich auf das Suchwort hin noch die registry cleanen lassen.
Zitieren
#4
(27.07.2017, 17:43)Bazii schrieb: Eine Frage noch:
Was meinst Du? Wäre es denn sinvoll, dass mit mit dem Skript zusätzlich zum auslesen der Einträge noch auf Benutzerwunsch die entsprechenden Einträge aus der Registry entfernen lassen kann oder ist das eher naiv gedacht? Der Startbutton ist ja eher groß. Da passen locken 2 hin Rolleyes . Somit könnte man sich auf das Suchwort hin noch die registry cleanen lassen.

Das würde ich (erstmal) lassen.
Solange die erstellte Regdatei nicht 100% fehlerfrei ist, solltest Du das löschen lieber dem Anwender überlassen.
Es gibt schon genug "Reg-Cleaner"-Programme, die mehr schaden als nutzen, weil sie (versehentlich) Registry-Einträge löschen.
Hinweise:
Ich benutze für den Arduino die Arduino-IDE.
Für AutoIt benutze ich die aktuelle AutoIt-Version sowie SciTE4AutoIt3.
Eine Hilfe kann ich nur auf Basis dieser Software leisten.
Zitieren
#5
(27.07.2017, 18:47)Gorathan schrieb: Das würde ich (erstmal) lassen.
Solange die erstellte Regdatei nicht 100% fehlerfrei ist, solltest Du das löschen lieber dem Anwender überlassen.
Es gibt schon genug "Reg-Cleaner"-Programme, die mehr schaden als nutzen, weil sie (versehentlich) Registry-Einträge löschen.

Ja, das ist richtig. Danke für Deine Einschätzung. Von "Reg-Cleaner"-Programmen habe ich auch die Faxen dicke. Es gibt genug Benutzer die mich privat schon angesprochen haben, dass nach Ausführung diverser "Reg-Cleaner"-Programme das eine oder andere nicht mehr richtig funktioniert hat.

Ich danke Dir für die kompetente Hilfe und die Zeit, die Du für mich investiert hast.

Noch eine Frage zum Forum: Gibt es irgendwo die Möglichkeit für den Benutzer das Thema als gelöst zu markieren?

Noch eine Frage zum Skript: Soll ich das Skript unter dem Skriptbereich "Scripte" noch bereitsstellen bzw. das Skript im Autoitforum bekanntmachen? Was meinst Du, ob es noch weitere Benutzer gibt die meine bzw. Deine erweiterte Version brauchen könnten?
Zitieren
#6
(27.07.2017, 19:56)Bazii schrieb: Noch eine Frage zum Forum: Gibt es irgendwo die Möglichkeit für den Benutzer das Thema als gelöst zu markieren?

Noch eine Frage zum Skript: Soll ich das Skript unter dem Skriptbereich "Scripte" noch bereitsstellen bzw. das Skript im Autoitforum bekanntmachen? Was meinst Du, ob es noch weitere Benutzer gibt die meine bzw. Deine erweiterte Version brauchen könnten?

Das Thema als gelöst markieren, kannst Du im ersten Post. Einfach auf bearbeiten klicken, das Beitrags-Icon oben auf das "Haken-Icon" setzen und "Antwort absenden" anklicken (das habe ich jetzt mal für Dich getan).

Du kannst das Script auch gern im "Scripte"-Forum posten. Vielleicht möchtest Du es noch erweitern (nicht nur HKLM, sondern auch HKCU)?
Vielleicht mit Checkboxen auswählbar. Außerdem vielleicht noch den Suchbegriff erweitern (Platzhalter und/oder RegExp).
Hinweise:
Ich benutze für den Arduino die Arduino-IDE.
Für AutoIt benutze ich die aktuelle AutoIt-Version sowie SciTE4AutoIt3.
Eine Hilfe kann ich nur auf Basis dieser Software leisten.
Zitieren
#7
(28.07.2017, 05:27)Gorathan schrieb: Das Thema als gelöst markieren, kannst Du im ersten Post. Einfach auf bearbeiten klicken, das Beitrags-Icon oben auf das "Haken-Icon" setzen und "Antwort absenden" anklicken (das habe ich jetzt mal für Dich getan).

Dank' Dir für die Antwort. Für das nächste Mal hab' ich dann den Haken raus Smile.

(28.07.2017, 05:27)Gorathan schrieb: Du kannst das Script auch gern im "Scripte"-Forum posten. Vielleicht möchtest Du es noch erweitern (nicht nur HKLM, sondern auch HKCU)?
Vielleicht mit Checkboxen auswählbar. Außerdem vielleicht noch den Suchbegriff erweitern (Platzhalter und/oder RegExp).

Gute Idee! Das wäre eine gute Übung für mich in meinem Augusturlaub. Die Checkboxen oder eine Combobox zur Auswahl der Registryzweige bekomme ich hin.
Aber bei Platzhalter und/oder RegExp würde ich gerne auf Dich zurückkommen, wenn es soweit wäre.
Zitieren
#8
Hallo Gorathan,

Regsearch Script aktualisiert auf V.1.0.0.2

Changelog:
- Durchsuchen von HKLM und HKCU möglich.
- Speicherung nach getrennten Verzeichnissen (HKLM und HKCU) eingefügt.
- Intelligente Checkboxen (HKLM und HKCU) eingefügt.
- Statusbar mit Meldungen eingefügt.
- Tooltip bei Programmausführung entfernt.
- Errorhandling in der GUI verbessert. So kann nun bei der Programmausführung nicht mehr auf die GUI zugegriffen werden


Show ContentRegSearch:

Jetzt würde noch die Möglichkeit eines erweiterten Suchbegriffes fehlen (Platzhalter und/oder RegExp). Damit kenne ich mich aber gar nicht aus. Würdest Du mir dabei bitte wieder unter die Arme greifen?
Zitieren
#9
Ich verstehe nicht so ganz, warum Du beim "Abbrechen" der Suche mit "ESC" das Programm ganz beendest.
Nur die Suche abbrechen reicht doch. Man könnte vielleicht noch verhindern, dass dann die Dateien geschrieben werden, aber das Programm komplett beenden würde ich nicht.
Das erwartet man als Anwender nicht, IMHO.


Und so wie Du das umgesetzt hast, ist das mit den Checkboxen ja ein "entweder/oder". Dafür würde man aber keine Checkboxen verwenden, sondern Radio-Controls oder eine Combo-Box (die besitzen das von Haus aus).
Bei Checkboxen würde ich erwarten, dass in beiden Zweigen gesucht wird und auch alle Ergebnisse in eine Datei geschrieben werden.


Nochwas: Warum eigentlich die Ergebnisse zwei mal schreiben (".txt" und ".reg")?
Hinweise:
Ich benutze für den Arduino die Arduino-IDE.
Für AutoIt benutze ich die aktuelle AutoIt-Version sowie SciTE4AutoIt3.
Eine Hilfe kann ich nur auf Basis dieser Software leisten.
Zitieren
#10
(29.07.2017, 18:31)Gorathan schrieb: Ich verstehe nicht so ganz, warum Du beim "Abbrechen" der Suche mit "ESC" das Programm ganz beendest.
Nur die Suche abbrechen reicht doch. Man könnte vielleicht noch verhindern, dass dann die Dateien geschrieben werden, aber das Programm komplett beenden würde ich nicht.
Das erwartet man als Anwender nicht, IMHO.

Ja das stimmt. Ich konnte nur das Programm nicht mehr sinnvoll und funktional nach meiner Bearbeitung und nach Abschluss einer Auswertung erneut aufrufen. Ich weis nicht wie ich es besser machen könnte. Ich nutze jetzt sogar um das Programm nach einer Auswertung neu zu starten am Ende den Befehl, "Exit Run ($outfile)". Wenn ich das Programm nicht beende, schreibt mir die erneute Auswertung beide Registry-Pfade in eine Textdatei und möchte ich ja nicht haben.

(29.07.2017, 18:31)Gorathan schrieb: Und so wie Du das umgesetzt hast, ist das mit den Checkboxen ja ein "entweder/oder". Dafür würde man aber keine Checkboxen verwenden, sondern Radio-Controls oder eine Combo-Box (die besitzen das von Haus aus).
Bei Checkboxen würde ich erwarten, dass in beiden Zweigen gesucht wird und auch alle Ergebnisse in eine Datei geschrieben werden.

Das wußte ich nicht. Ich wollte ein entweder / oder haben. Daher habe ich die Pfade und die Textdateien so in Checkboxen eingebaut. War das falsch? Was wäre richtig?

(29.07.2017, 18:31)Gorathan schrieb: Nochwas: Warum eigentlich die Ergebnisse zwei mal schreiben (".txt" und ".reg")?

Die .reg Dateien benötige ich für eine Weiterverarbeitung der Dateien in ein PE-System.
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste