AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) TRegistry Unterschied zwischen Delphi 7 und 2009
Thema durchsuchen
Ansicht
Themen-Optionen

TRegistry Unterschied zwischen Delphi 7 und 2009

Ein Thema von Shark99 · begonnen am 6. Mai 2015 · letzter Beitrag vom 11. Mai 2015
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.977 Beiträge
 
Delphi 12 Athens
 
#1

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 6. Mai 2015, 13:11
Wenn du damit auf TRegIniFile hinaus willst:
Das ist nur eine Krücke um eine Migration der alten INIs von Windows 3.x auf Windows 9x und höher einfacher zu machen. Für neue Implementierungen macht es normalerweise keinen Sinn, weil man sich damit unnötig beschränkt, es damit aber nicht einfacher ist (wenn nicht schon INI-Code da ist).
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#2

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 6. Mai 2015, 13:38
Wo beschränkt man sich? Wenn ich keine Großfamilie habe, dann kaufe ich mir auch nicht einen Kleinbus, weil da zehn Personen rein passen, ich also mehr Möglichkeiten habe. Natürlich ist/war TRegIniFile dazu gedacht einfach seine Ini umzuschreiben, aber was ist gegen
Delphi-Quellcode:
  with TRegIniFile.Create('Software\' + ChangeFileExt(ExtractFileName(ParamStr(0)), '')) do
  try
    WriteString(Section, Ident, 'Irgendein Text')
  finally
    Free
  end;
zu sagen, wenn man einen String speichern möchte?

Ist es cooler für das gleiche Ergebnis doppelt so viele Zeilen zu nutzen, weil es TRegistry ist? Ja, wenn ich mehr speichern will, nutze ich auch TRegistry. Um Einstellungen zu speichern, da verbiege ich mich nicht künstlich, nur weil in der Hilfe steht, dass es für die Migration der alten INIs von Windows 3.x auf Windows 9x ist. Es ist da, es reicht für 98% alle Fälle, warum also mehr?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.393 Beiträge
 
Delphi 12 Athens
 
#3

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 6. Mai 2015, 13:51
Und wo ist da der große Unterschied zu dem?
Delphi-Quellcode:
with TRegistry.Create(KEY_WRITE) do
try
  OpenKey('Software\MeineFirma\MeinProgramm\' + Section, True);
  WriteString(Ident, 'Irgendein Text');
finally
  Free;
end;
Abgesehn daon, daß bei Beidem die Fehlerbehandlung fehlt.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#4

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 6. Mai 2015, 14:43
Hast du jetzt geantwortet um nur um zu antworten oder war es ernst gemeint?
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.977 Beiträge
 
Delphi 12 Athens
 
#5

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 6. Mai 2015, 15:27
Wo beschränkt man sich? Wenn ich keine Großfamilie habe, dann kaufe ich mir auch nicht einen Kleinbus, weil da zehn Personen rein passen, ich also mehr Möglichkeiten habe.
Ich nehme aber auch keinen Transportbeutel für meine Fische nur weil sie da auch Wasser drin haben. Da bleibe ich lieber beim Aquarium.

Die meisten Programme werden im Laufe der Zeit erweitert und damit werden dann auch z.B. mehr Einstellungen usw. benötigt. Da ist es viel besser, wenn man gleich TRegistry benutzt hat und damit auch die Möglichkeit hat die Möglichkeiten der Registry auszuschöpfen.

Davon abgesehen sehe ich aber auch nicht den großen Unterschied im Quelltext, nur dass du bei TRegIniFile keinerlei Möglichkeit zur Fehlerbehandlung hast, da du nirgends den Rückgabewert von OpenKey im Konstruktor bekommst. Du weißt also nicht, ob du hinterher überhaupt schreiben kannst, kannst also nur auf eine Exception prüfen (oder CurrentPath gegenprüfen, aber naja)...
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 6. Mai 2015, 15:52
@jaenicke

Wenn du dir TRegIniFile genauer ansiehst, wirst du bemerken, dass es auf HKEY_CURRENT_USER beschränkt ist. Mit TRegIniFile kann man also nicht irgendwo anders schreiben, nur in HKEY_CURRENT_USER Zweig. Das ist die Einschränkung. Und auf HKEY_CURRENT_USER hat man in der Regel immer Rechte, da es dem CURRENT_USER, als dem aktuellen Benutzer gehört. Man greift also auf den eigenen Zweig der Registry zu. Somit sollte es keine Probleme geben.

Die Probleme die du meinst tauchen in der Regel in anderen Zweigen auf.

Ich könnte mir nur den einen Grund vorstellen, dass ein anderes Programm auf meine Einstellungen zugreift, was eigentlich nicht vorkommen sollt.

Also nochmal, allgemein auf die Registry zugreifen, da gebe ich dir Recht. Hier gehen es aber um HKEY_CURRENT_USER.
  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 03:06 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