AGB  ·  Datenschutz  ·  Impressum  







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

(TRegistry) Sinn von CurrentKey

Ein Thema von Caps · begonnen am 20. Jun 2013 · letzter Beitrag vom 12. Feb 2014
Antwort Antwort
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 10:29

Zitat:
Mit CurrentKey wird der Schlüssel ermittelt, der aktuell in der Registrierdatenbank geöffnet ist. Alle Operationen von TRegistry betreffen nur diesen Schlüssel. Vor dem Zugriff auf einen anderen Schlüssel muss die Methode OpenKey oder OpenKeyReadOnly aufgerufen werden.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Caps

Registriert seit: 23. Mär 2006
Ort: Leipzig
299 Beiträge
 
#2

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 11:05

Zitat:
Mit CurrentKey wird der Schlüssel ermittelt, der aktuell in der Registrierdatenbank geöffnet ist. Alle Operationen von TRegistry betreffen nur diesen Schlüssel. Vor dem Zugriff auf einen anderen Schlüssel muss die Methode OpenKey oder OpenKeyReadOnly aufgerufen werden.
So ging's mir auch, nachdem ich die Doku (die ziemlich identisch mit der Delphi-OH ist) gelesen hatte. Mir ist nicht ganz klar, wie das in irgendeinem Zusammenhang mit der tatsächlichen Funktionalität der Eigenschaft CurrentKey steht. Oder wie interpretierst Du (Sir Rufo) die Doku in Anbetracht der Fakten? Ich kann mir leider immernoch keinen Reim drauf machen.

lg Caps
"Der Mode cmCFS8 ist prohibitär und von mir entwickelt."

Geändert von Caps (20. Jun 2013 um 11:05 Uhr) Grund: Grammatik
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#3

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 14:51
CurrentKey ist vom Typ HKEY, welcher wiederum ein Handle und somit eine Zahl ist. Für die RootKeys sind Konstanten definiert, die der Compiler anscheinend auflösen kann, was bei Unterschlüsseln nicht möglich ist.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Caps

Registriert seit: 23. Mär 2006
Ort: Leipzig
299 Beiträge
 
#4

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 15:29
Ok, dann kann ich den Wert von CurrentKey eigentlich nicht verwenden (wofür auch...?), zumal beim zweimaligen Öffnen ein und desselben Schlüssels verschiedene Werte für CurrentKey zurückkamen...

Die Beschreibung von RootKey ist auch eher wunderlich als deutlich:
Zitat:
Mit RootKey wird die Hierarchie der Unterschlüssel definiert, auf die eine Anwendung zugreifen kann, oder es wird der Hauptschlüssel der Anwendung definiert.
[...]
Hinweis
Bei einigen Operationen, wie z.B. LoadKey oder RegistryConnect, muß die Anwendung eventuell den Vorgabewert von RootKey ändern.
Was soll das bedeuten - es wird eine Hierarchie der Unterschlüssel definiert? Wie definiert man mit einer einzigen Zahl eine Hierarchie? Durch Gödelisierung vielleicht...
Ich benutze weder LoadKey noch RegistryConnect und setze RootKey dennoch auf verschiedene Werte, damit ich halt-eben-nunmal auf diese Stellen zugreifen kann, oder verstehe ich hier was falsch?
RootKey ist doch der einzige Weg, dem Registry-Objekt mitzuteilen, dass man in einen bestimmten Root-Schlüssel einsteigen möchte. Eine andere Möglichkeit existiert doch gar nicht, oder?

Verwirrt,
Caps
"Der Mode cmCFS8 ist prohibitär und von mir entwickelt."
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 15:43
Also wenn es ein HKEY (ein Handle) ist, ist weniger verwunderlich, dass unterschiedliche Zahlen beim auf-, zu- und wieder aufmachen rauskommen, oder?
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Caps

Registriert seit: 23. Mär 2006
Ort: Leipzig
299 Beiträge
 
#6

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 16:26
Also wenn es ein HKEY (ein Handle) ist, ist weniger verwunderlich, dass unterschiedliche Zahlen beim auf-, zu- und wieder aufmachen rauskommen, oder?
Ja, aber nur in Bezug auf die Unterschlüssel des Root-Schlüssels, denn bei dem muss das Handle ja immer gleich sein, damit die fest definierten Konstanten (HKEY_...) passen. Also ist der Wert von CurrentKey nur im Spezialfall "ich öffne Root-Schlüssel" festgelegt und sinnvoll verwendbar, in allen anderen Fällen (der überragenden Mehrzahl) nutzlos. Und im Falle "ich öffne Root-Schlüssel" sagt mir die Eigenschaft RootKey bereits alles was ich wissen will. Den Rest erfahre ich dann über CurrentPath. CurrentKey ist in meinen Augen überflüssig.
Das soll einer verstehen... ich geh jetzt heim.
Schönen Abend!

lg Caps
"Der Mode cmCFS8 ist prohibitär und von mir entwickelt."

Geändert von Caps (20. Jun 2013 um 16:28 Uhr)
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#7

AW: (TRegistry) Sinn von CurrentKey

  Alt 21. Jun 2013, 07:58
Immer diese pauschalen Aussagen... nutzlos für Dich vielleicht. Aber es gibt noch eine Reg*-API-Aufrufe, die nicht in TRegistry gekapselt sind, und wenn man die haben möchte, braucht man ein Handle eines geöffneten Schlüssels. Auch die implementierten Aufrufe sind nicht vollständig, vielleicht will man mal andere als die drei simplen Registry-Datentypen lesen oder schreiben, ohne gleich alles direkt mit der API zu implementieren. Oder man kommuniziert über Delphi-Grenzen hinweg etwa mit gelinkten DLLs.
  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 21:36 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