AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Registry durchsuchen

Ein Thema von cherry · begonnen am 21. Okt 2010 · letzter Beitrag vom 2. Nov 2010
Antwort Antwort
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

AW: Registry durchsuchen

  Alt 26. Okt 2010, 21:08
Leider beschreibst Du nicht genau, was Dich zu der Überzeugung bringt, Das Programm sei korrupt.
(von mir hat es sich nicht schmieren lassen)

Unter D7 tut es was es soll, und verdaut auch den überflüssigen Mehrfachaufruf von
RG.Readstring() .
Du bist Dir im Klaren darüber, daß OpenKey für eine erfolgreiche Durchführung Schreibrechte in der Registry benötigt?
Für Billy Normalbenutzer ist da ganz schnell das Ende der Fahnenstange erreicht.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von cherry
cherry

Registriert seit: 14. Nov 2005
561 Beiträge
 
RAD-Studio 2009 Ent
 
#2

AW: Registry durchsuchen

  Alt 27. Okt 2010, 07:03
Leider beschreibst Du nicht genau, was Dich zu der Überzeugung bringt, Das Programm sei korrupt.
(von mir hat es sich nicht schmieren lassen)
Wie gesagt, wenn ich den Teil mit RG.Readstring() nicht auskommentiere sondern mitkompiliere, durchläuft das Programm nicht alle Schlüssel. Z.b. wenn ich HKEY_LOCAL_MACHINE durchsuche bleibt es irgendwo in Software hangen, der ganze Schlüssel System wird dann nicht durchsucht. Und das geht bei dir? auch wenn du den ganzen Teil mitkompilierst.

Unter D7 tut es was es soll, und verdaut auch den überflüssigen Mehrfachaufruf von
RG.Readstring() .
Wird die Partie wo ich die Werte vergleiche zu oft aufgerufen? oder wie kann ich das verstehen?

Du bist Dir im Klaren darüber, daß OpenKey für eine erfolgreiche Durchführung Schreibrechte in der Registry benötigt?
Für Billy Normalbenutzer ist da ganz schnell das Ende der Fahnenstange erreicht.
jep das ist mir klar. Es geht dann noch weiter, wenn ich auch davon überzeugt bin das das Progi einwandfrei funktioniert, werde ich eine funktion einbauen die z.B. gefundene Werte löschen kann.
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?

Geändert von cherry (27. Okt 2010 um 07:05 Uhr)
  Mit Zitat antworten Zitat
Alt 27. Okt 2010, 08:51     Erstellt von rayjian
Dieser Beitrag wurde von Daniel gelöscht. - Grund: Verdacht auf SPAM und den damit verbundenen verschwenderischen Umgang von wertvollen Bits und Bytes
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Registry durchsuchen

  Alt 28. Okt 2010, 09:54
der Doppelaufruf steht hier:
Delphi-Quellcode:
if (DataType= rdString) or (DataType = rdExpandString) then
begin
  RG.ReadString(valuenames[I]); {---------------------------------------!!!!!!}

          (*// <-- MARKIERTER TEIL// <-- MARKIERTER TEIL// <-- MARKIERTER TEIL// <-- MARKIERTER TEIL// <-- MARKIERTER TEIL// <-- MARKIERTER TEIL// <-- MARKIERTER TEIL*)
// data := '';
// data := RG.ReadString(valuenames[I]); {-------------------------------------!!!!!!!!}
// if (data <> '') then
// begin
// if Pos(UPPERCASE(txt),UPPERCASE(data)) > 0 then // VALUE FOUND
// begin
// Writeln('[KEY]'+RG.CurrentPath);
// Writeln(' [Valuename]'+valuenames[i]);
// Writeln(' [VALUE]'+data);
// end;
// end;
          (**)
Beim ersten Mal legst Du nur die gelesenen Daten nicht ab. Wofür das gut sein soll ist mir schleierhaft.

Wenn Dein Programm sich an der LOCAL_MACHINE verschluckt, dann solltest Du vielleicht einmal ganz genau protokollieren was für Daten gelesen werden und was wirklich abläuft. Da letztlich jede Registry individuell ist und Dein Programm auf anderen Rechnern ohne Fehler läuft, könnte es sein, da? Deine Registry eine aussergewöhnliche Kombination von Rechten/Daten/Schlüsseln aufweist.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von cherry
cherry

Registriert seit: 14. Nov 2005
561 Beiträge
 
RAD-Studio 2009 Ent
 
#5

AW: Registry durchsuchen

  Alt 2. Nov 2010, 08:19
Hallo, sorry dass ich mich erst jetzt wieder melde...

@Doppelter Aufruf: Oops falsch rüber gekommen. ReadString() wird nicht zweimal aufgerufen. (wenn man nicht beides Ent-Auskommentiert )

Zitat:
im ersten Mal legst Du nur die gelesenen Daten nicht ab. Wofür das gut sein soll ist mir schleierhaft.
Ich habe nur einen Test gemacht. Das Problem liegt anscheinend NUR an ReadString(). Lasse ich den auskommentierten Teil und die Zeile RG.ReadString(valuenames[I]); nicht kompilieren, macht das Programm was es soll. Die Zeile RG.ReadString(valuenames[I]); reicht, damit das Programm nicht tut was es soll. Da verstehe ich die Welt nicht mehr... muss ich irgendwie nach ReadString ein CloseReadString machen? Oder was kann das bloss sein?

Code:
successfully opened: \SOFTWARE\VMware, Inc.\VMware Workstation <--> SOFTWARE\VMware, Inc.\VMware Workstation
successfully opened: \SOFTWARE\VMware, Inc.\VMware Workstation <--> SOFTWARE\VMware, Inc.\VMware Workstation
successfully opened: \SOFTWARE\VMware, Inc. <--> SOFTWARE\VMware, Inc.
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE\Wilson WindowWare\Settings\WWWBATCH <--> SOFTWARE\Wilson WindowWare\Settings\WWWBATCH
successfully opened: \SOFTWARE\Wilson WindowWare\Settings\WWWBATCH <--> SOFTWARE\Wilson WindowWare\Settings\WWWBATCH
successfully opened: \SOFTWARE\Wilson WindowWare\Settings <--> SOFTWARE\Wilson WindowWare\Settings
successfully opened: \SOFTWARE\Wilson WindowWare <--> SOFTWARE\Wilson WindowWare
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE\Windows 3.1 Migration Status <--> SOFTWARE\Windows 3.1 Migration Status
successfully opened: \SOFTWARE\Windows 3.1 Migration Status <--> SOFTWARE\Windows 3.1 Migration Status
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE\Wise Owl, Inc. <--> SOFTWARE\Wise Owl, Inc.
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE <--> SOFTWARE
successfully opened: \SOFTWARE\Description\Microsoft\Rpc <--> SOFTWARE\Description\Microsoft\Rpc
successfully opened: \SOFTWARE\Description\Microsoft <--> SOFTWARE\Description\Microsoft
successfully opened: \SOFTWARE\Description <--> SOFTWARE\Description
successfully opened: \SOFTWARE <--> SOFTWARE
ERROR WHILE OPENING: \ <--> SOFTWARE
Nach dem Key "SOFTWARE\Wise Owl, Inc." sollte eigentlich der nur noch ein Key namens "Zone2" (des ist allerdings leer) kommen, dann kommt der nächste Hauptkey von LM nähmlich SYSTEM. Das passiert aber nicht. "Nach SOFTWARE\Wise Owl, Inc." gehts zurück nach "Description". Der Key ist aber viel weiter oben und wurde bereits durchlaufen. Das alles passiert aber nicht, wenn die Zeile ReadString() nirgens im Code steht. Verhext?!
Ist das nur mein Gefühl, oder ist die ganze Welt verrückt geworden!?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz