Autor Beitrag
Chatfix
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: Fr 04.10.02 17:13 
So da Euch das INI-Tut so gefallen hat hab ich mich entschlossen noch eins zu machen:
Den Tutorial gibts jetzt auch nur noch in PDF um die Aktualisierung zu vereinfachen:

Die aktuellste Version findet ihr hier: www.kuknet.de/tutorial2.pdf

    Inhalt:
  • Vorwort
  • Erste Schritte
  • In die Registry schreiben
  • Aus der Registry lesen
  • Überprüfen ob ein Schlüssel / eine Eigenschaft existiert
  • Werte aus der Registry löschen
  • Schlüssel verschieben / kopieren


Über Feedback würde ich mich weiterhin freuen.

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce


Zuletzt bearbeitet von Chatfix am Di 25.05.04 10:49, insgesamt 11-mal bearbeitet
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 10.10.02 11:47 
Chatfix hat folgendes geschrieben:
Ich hoffe ich habe nix vergessen :)

Na ja, doch ... try-finally-end. Wenn es so auch in der Delphi-Hilfe steht, sollte man das auch verwenden.

Außerdem fehlt der IMHO wichtige Hinweis, dass das Lesen aus dem Schlüssel HKEY_LOCAL_MACHINE (u.ä.) nicht immer funktioniert. Stichwort: NT-Betriebssysteme (WinXP erobert ja gerade den Home-Bereich) und mangelnde Rechte.
Wenn man also wirklich nur Werte lesen will, dann wäre:
ausblenden Quelltext
1:
reg := TRegistry.Create(KEY_READ);					

zu benutzen, weil die von dir gezeigte, aus der Hilfe stammende Vorlage die Registry mit allen Zugriffsrechten öffnet. Und das kann -wie gesagt!- auch in die Hose gehen.

Und das gleiche in Grün beim Schreiben von Werten: Der o.g. try/finally-Block verhindert unschöne und unprofessionell wirkende Fehlermeldungen, wenn -aus welchen Gründen auch immer- ein Schlüssel nicht angelegt, bzw. ein Wert nicht geschrieben werden kann.
Chatfix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: Do 10.10.02 15:54 
Habs mal geändert..
das mit dem Try/Finally hab ich vergessen, das mit KEY_READ wusste ich nicht.. man kann immer was dazulernen!

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
danielpt
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 81

Windows 2000 Professional SP4
D6 Personal
BeitragVerfasst: So 19.10.03 10:18 
und noch ein kleiner Fehler:

Es muss so heißen:
ausblenden Quelltext
1:
2:
Var {...} 
  reg:TRegistry;

_________________
cu daniel
Chatfix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: So 19.10.03 10:21 
habs geändert, danke

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
jojo2
Gast
Erhaltene Danke: 1



BeitragVerfasst: Di 24.02.04 13:24 
Bei mir zeigt der immer an: 'Failed to set data for '.od''
:?
:twisted: :twisted: :twisted: Dann frag ich halt nix mehr :twisted: :twisted: :twisted:


Zuletzt bearbeitet von jojo2 am Sa 28.02.04 18:44, insgesamt 1-mal bearbeitet
Chatfix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: Di 24.02.04 14:10 
Wo genau, und bei was?!

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
ixtreme
Gast
Erhaltene Danke: 1



BeitragVerfasst: Di 24.02.04 14:15 
der link oben geht nicht...


dieses Posting kann später gelöscht werden!


ixtreme.de
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 24.02.04 14:23 
Ist wahrscheinlich so, weil Chatfix ja schreibt:
Zitat:
Willkommen auf den Übergangs-Seiten [...]

Der Beitrag ist momentan hier.

Dabei fällt mir als Kritik ja noch ein: "OpenKey" ist eine Funktion. ;)
ixtreme
Gast
Erhaltene Danke: 1



BeitragVerfasst: Di 24.02.04 14:26 
Zitat:
Willkommen auf den Übergangs-Seiten [...]


wo steht denn das?

ixtreme.de
Chatfix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: Di 24.02.04 16:00 
Sorry, hatte vergessen die links zu aktualisieren, aber alles was man unter dem link findet steht auch hier (hab das damals gemacht weils noch kein Delphi-Tag gab)

und das mit den übergangsseiten steht auf meiner homepage...

Das mit dem OpenKey werd ich korrigieren

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: So 29.02.04 22:42 
@Chatfix

Dein Beispiel ist nicht besonders glücklich gewählt. Es ist nicht falsch, aber dein Beispiel kann man viel einfacher mit TRegIniFile schreiben:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
uses {...}, Registry;


var {...} 
  Reg: TRegIniFile;


Reg := TRegIniFile.Create('SOFTWARE\DeinName\DeinProgramm'); 
try 
  Reg.WriteString(Section, Ident, Value) 
  //...


Man braucht kein OpenKey usw. Allerdings, wie ich schon gesagt habe, ist das nur nicht glücklich gewählt. Denn TRegIniFile schreibt automatisch im Pfad HKEY_USERS\.DEFAULT. Wer sowieso in dem Pfad schreiben will (z.B. seine Software-Einstellungen), der kann sich den ganzen Hickhack mit TRegistry sparen und die Kurzversion wählen.

Allerdings gilt das nur für den Pfad. Für alle anderen Pfade ist die TRegistry Variante notwendig. Natürlich auch dann wenn man über das einfache String, Integer und Boolean hinausgeht. Aber das ist in deinem Beispiel nicht von Nöten.

_________________
Popov
Chatfix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1583
Erhaltene Danke: 10

Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
BeitragVerfasst: Mo 01.03.04 09:48 
Ok ich werde es in meiner Neuauflage des Tutorials mit einarbeiten :)

_________________
Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
einfach112
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 168

xp
del7
BeitragVerfasst: Di 25.05.04 00:13 
Titel: und noch ne frage !
Hallo !
also so wie hier alles beschrieben wird ...
alles klar !
alles geht !
nur meine frage ist nun das wenn ich so wie oben beschrieben nen schlüssel erstelle dann wird immer der typ REG_SZ verwendet (also meines wissens einfacher schlüssel !

wie kann ich aber als typen :

REG_MULIT_SZ oder vieleicht auch
als

REG_BINARY

machen ?!
Bin über antworten natrürlich wie immer dankbar !
thx
mike

_________________
sorry bin noob !
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 25.05.04 01:32 
Meines Wissen wird REG_MULIT_SZ nicht von der VCL unterstützt.

REG_BINARY: Dafür hat das Registry Objekt eine passende Methode, siehe Hilfe dazu.