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
Caps

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

(TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 10:19
Hallöle,

ich verwende TRegistry. Wenn ich RootKey auf einen gültigen Wert setze und den Schlüssel mit OpenKey öffne, so bekommt CurrentKey den selben Wert - ok.
Wenn ich aber einen RegPath angebe, d.h. unter dem RootKey einen weiteren Schlüssel öffne (z.B. HKEY_CURRENT_USER\AppEvents), dann besitzt CurrentKey irgendeinen Zahlenwert. Schließe ich den Schlüssel und öffne ihn direkt danach erneut, so ist der Zahlenwert (meist?) ein anderer.
Was soll dieser Wert bedeuten? Was sagt er mir?

Caps
"Der Mode cmCFS8 ist prohibitär und von mir entwickelt."
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: (TRegistry) Sinn von CurrentKey

  Alt 20. Jun 2013, 10:29
Schon in die Doku geschaut?

Delphi-Referenz durchsuchenTRegistry.CurrentKey
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

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

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
 
#4

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
 
#5

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
 
#6

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
 
#7

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
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 19:11 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