AGB  ·  Datenschutz  ·  Impressum  







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

Gibt es die funktion StrToHKEY ?

Ein Thema von Pseudemys Nelsoni · begonnen am 25. Apr 2004 · letzter Beitrag vom 26. Apr 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 13:53
moin

da ich das rad nicht neu erfinden möchte frage ich ob es diese funktion (wie auch immer der name sein koennte) bereits gibt?
ansonsten hab ich mir das so gedacht:

Delphi-Quellcode:
function StrToHKEY(StrKey: string): HKEY;
begin
  if StrKey = 'HKEY_CLASSES_ROOTthen result := HKEY_CLASSES_ROOT;
  if StrKey = 'HKEY_CURRENT_USERthen result := HKEY_CURRENT_USER;
  if StrKey = 'HKEY_LOCAL_MACHINEthen result := HKEY_LOCAL_MACHINE;
  if StrKey = 'HKEY_USERSthen result := HKEY_USERS;
  if StrKey = 'HKEY_CURRENT_CONFIGthen result := HKEY_CURRENT_CONFIG;
end;
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 13:55
ich würde noch nen uppercase auf "StrKey" durchführen damit es egal ist ob der user 'HKEY_CLASSES_ROOT' groß oder klein schreibt
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#3

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 13:56
Stimmt, ganz vergessen, danke ^^
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#4

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 13:59
nur zur info: sowas gibts wohl nicht
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 13:59
Zitat von Pseudemys Nelsoni:
Stimmt, ganz vergessen, danke ^^
Hi,

ist evtl. nicht sooo wichtig, aber ich würde den StringParameter als CONST deklarieren, also

function StrToHKEY(const StrKey: string): HKEY; sonst fügt Delphi noch zusätzlichen Code für die Referenzzählung des Strings ein und das macht die funktion langsamer.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#6

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 14:01
danke, mach ich 8)
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#7

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 14:10
Meine Funktionen sehen so aus:

Delphi-Quellcode:
const
  HKEYNames: array[0..6] of string =
    ('HKEY_CLASSES_ROOT', 'HKEY_CURRENT_USER', 'HKEY_LOCAL_MACHINE', 'HKEY_USERS',
    'HKEY_PERFORMANCE_DATA', 'HKEY_CURRENT_CONFIG', 'HKEY_DYN_DATA');

function HKEYToStr(const Key: HKEY): string;
begin
  if (key < $80000000) or (key > $80000006) then
    Result := '
  else
    Result := HKEYNames[key - $80000000];
end;

function StrToHKEY(const KEY: string): HKEY;
var
  i: Byte;
begin
  Result := $0;
  for i := Low(HKEYNames) to High(HKEYNames) do
  begin
    if SameText(HKEYNames[i], KEY) then
      Result := $80000000 + i;
  end;
end;
Thomas
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#8

Re: Gibt es die funktion StrToHKEY ?

  Alt 25. Apr 2004, 19:38
Ich würde sogar noch einen Schritt weiter gehen und "$80000000" durch "HKEY_CLASSES_ROOT" ersetzen, damit man auf Anhieb weiß, worauf sich die zugrunde liegenden Berechnungen des Schlüssels bzw. Strings stützen.

Und dann würde ich auch noch die Kurzformen wie HKCR, HKCU, HKLM, usw. integrieren.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#9

Re: Gibt es die funktion StrToHKEY ?

  Alt 26. Apr 2004, 15:31
was ist denn $80000000 und $80000006?

ich würd nicht nur gern wissen wwas sie bedeuten, sondern auch wie man auf diese zahlen kommt..
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von The-X
The-X

Registriert seit: 31. Aug 2003
Ort: Woffelsbach / user.exe ;)
377 Beiträge
 
Delphi 7 Personal
 
#10

Re: Gibt es die funktion StrToHKEY ?

  Alt 26. Apr 2004, 15:34
Das sind die Werte zu den Konstanten (HKEY_*)
Delphi-Quellcode:
Const
 HKEY_CLASSES_ROOT = $80000000;
 HKEY_CURRENT_USER = $80000001;
 HKEY_LOCAL_MACHINE = $80000002;
 HKEY_USERS = $80000003;
 HKEY_PERFORMANCE_DATA = $80000004;
 HKEY_CURRENT_CONFIG = $80000005;
 HKEY_DYN_DATA = $80000006;
WGET ftp://root@fbi.us.gov/secret/worldreign.exe <- damit werde ich die Weltherrschaft an mich reissen!
=> irc://irc.quakenet.eu.org:6667/delphi.de da werden Sie auch (manchmal) geholfen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 15:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz