AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Registry KeyExists function AddressVilation
Thema durchsuchen
Ansicht
Themen-Optionen

Registry KeyExists function AddressVilation

Ein Thema von k4ni · begonnen am 12. Feb 2008 · letzter Beitrag vom 12. Feb 2008
Antwort Antwort
k4ni

Registriert seit: 17. Jul 2007
Ort: Ulm
258 Beiträge
 
Delphi 7 Enterprise
 
#1

Registry KeyExists function AddressVilation

  Alt 12. Feb 2008, 13:46
hallo DP,

Um zu prüfen ob ein eintrag ein einer TreeView liste schon existiert oder nicht benütz ich die registry weil ich es anderst nicht hinbekomme.
Da hab ich mir eine kleine function geschrieben, hier:

Delphi-Quellcode:
function RegExists(Entry: String): boolean;
var
regist: TRegistry;
begin
result := false;
regist.Create;
regist.RootKey := HKEY_LOCAL_MACHINE;
if regist.KeyExists('Software\phpbb_manager\Server'+Entry) then
result := true;
end;
Hab ich aufgerufen mit:

Delphi-Quellcode:
procedure TForm2.AddServerBtnClick(Sender: TObject);
var
Ibox: String;
begin
Ibox := Inputbox('Add new server', 'Enter name of the new server:', '');
if not RegExists(Ibox) then
//if not (Ibox = '') then
ServerView.Items.AddChild(nil, Inputbox('Add new server', 'Enter name of the new server:', 'New server'));
{Und hier eben noch den registry-eintrag machen}
end;
Ich verstehe nicht wieso dor eine addressViolation kommt, habs auch schon versucht indem ich zuerst "OpenKey" mache, ging aber auch nicht

Ich hoffe ich könnt mir helfen
danke im vorraus
  Mit Zitat antworten Zitat
MStoll

Registriert seit: 15. Nov 2005
131 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Registry KeyExists function AddressVilation

  Alt 12. Feb 2008, 14:03
Hi,

du solltest statt "regist.create" schreiben:
Delphi-Quellcode:
regist := TRegistry.Create;
try
 ...dein Code...
finally
   regist.Free;
end;
Gruß
Michael
"Man soll nie mehr essen als mit Gewalt reingeht!" (n.n.)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Registry KeyExists function AddressVilation

  Alt 12. Feb 2008, 14:16
regist.Create;
regist := TRegistry.Create; Und der Tipp mit dem try-finally-Block ist auch nicht verkehrt
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
k4ni

Registriert seit: 17. Jul 2007
Ort: Ulm
258 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Registry KeyExists function AddressVilation

  Alt 12. Feb 2008, 14:20
ay ay ay.
Ich immer mit meinen leichtsinnsfehler
Jop danke noch für the try - finally tipp, gleich mal hinzugefügt. 8)

Vielen dank
  Mit Zitat antworten Zitat
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Registry KeyExists function AddressVilation

  Alt 12. Feb 2008, 14:23
Und wenn du schon mal dabei bist, kannst du das result auch nur einmal schreiben

result := regist.KeyExists('Software\phpbb_manager\Server'+Entry);
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Registry KeyExists function AddressVilation

  Alt 12. Feb 2008, 15:19
Und wenn du schon mal dabei bist, könntest du das ganze auch ohne Admin-Rechten lauffähig machen, in dem die den Schlüssel nur lesend öffnest mit TRegistry.Create(KEY_OPENREAD).
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 02:40 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