| Autor |
Beitrag |
PassingStranger
Hält's aus hier
Beiträge: 1
|
Verfasst: Fr 06.01.06 00:50
Hallo zusammen,
was soll ich sagen... Auch ich werde mich demnächst mit o.g. Problem herumschlagen müssen...
Ich sitze gerade an einem Tool, dass demnächst Daten anwenderspezifisch speichern können muss. Das Tool läuft auch unter Windows 98 (möglicherweise sogar unter Windows 95; muss noch getestet werden), und so möchte ich es auch weiterhin haben. Ich lege relativ grossen Wert darauf, weil es einige Menschen gibt, bei denen es halt nicht anders geht.
Zu gegebener Zeit werde ich es hier in der Freeware-Sparte (später, wenn es genug getestet worden ist) zur Schau stellen und anschliessend sicher als Open Source veröffentlichen (wenn der Code etwas aufgeräumter ist  )...
Nun zu meiner Frage: Gibt es eine hier allgemein gültige (=anerkannte) Auffassung, wie Anwendungsdaten unter allen bekannten Windows (32 Bit ff.) -Betriebssystemen zu speichern sind? Ich schliesse die Registry für diesen Zweck definitiv aus, da ich Konfigurationsdateien absolut den Vorzug gebe.
Nun habe ich schon einige Threads hier zu diesem Thema gelesen, bin aber noch nicht fündig geworden...
Vielleicht ist das ja auch ein guter Anlass, alle "Cracks" und Ideengeber dazu anzuregen, ihre Meinungen und Ideen in gesammelter Form abzugeben; beginnend mit Windows 95 und "endend" mit Windows Vista. Oder sogar darüber hinaus.
Vermutlich ist das ganze Blah-blah von mir eh schon irgendwo beantwortet worden. Ich konnt's leider nur nicht finden.
Beste Grüsse,
Ralf.
PS: Ach ja, ich nenne nur ein Delphi 4 Professional mein Eigen. Ich weiss, traurig aber (noch) wahr. 
|
|
Der Jan
      
Beiträge: 98
Win2k prof, WinXP prof, Linux
D6 Prof, BCB4 Std, BCB6 Ent, BDS 2006 Ent
|
Verfasst: Fr 06.01.06 08:58
Da du die Registry ausschließt, brauche ich dir diese ja nicht zu empfehlen
Eine gute Möglichkeit sind Dateien im XML-Format. Diese kann man auch sehr gut strukturieren. Für den Zugriff gibt es auch Komponenten, mit denen sich das einfach gestaltet. Bei den Jedi-Komponenten ist z.B. eine dabei, dafür gabs derletzt entweder hier oder in der DP ein kleines Tutorial.
Möglich ist auch die Benutzung von Ini-Dateien. Ok, nicht gleich schlagen  Diese sind mehr oder weniger ein Überbleibsel von 16-Bit Windows, funktionieren aber nichtsdestotrotz sehr gut. Und sind mittels TIniFile in Delphi auch sehr einfach zu nutzen.
Die Dateien solltest du unter dem entpsrechenden Nutzer-Ordner speichern, damit bei mehreren Nutzern keine Konflikte auftreten.
_________________ Gruß, Jan
|
|
Andreas L.
      
Beiträge: 1703
Erhaltene Danke: 25
Windows Vista / Windows 10
Delphi 2009 Pro (JVCL, DragDrop, rmKlever, ICS, EmbeddedWB, DEC, Indy)
|
Verfasst: Fr 06.01.06 09:07
Moin,
habe grad das hier im Internet gefunden:
Windows 98 Ordnerstruktur 1: 2: 3: 4: 5:
| Windows\ Lokale Einstellungen\ (auf engl. OS: Local Settings) Anwendungsdaten\ |
Da man Windows auf verschiedenen Partitionen, also nicht immer C:\, installieren kann, solltest du den Windows-Ordner mit der DOS-Variable %windir% oder %SYSTEMROOT% herausfinden können. Die Installationspartition kannst du mit der Variable %SystemDrive% herausfinden.
Da es unter Windows 95 - Windows ME IMHO keine Berechtigungen zwischen Profilen/usern gab könntest du auf diesen Systemen die Einstellungen im Programmordner deiner Anwendung speichern, z. B.: %SystemDrive%\Programme\MeinTool\Einstellungen\<$profilname>\bla.ini
Den Profilnamen musst du halt aus den System auslesen. Entweder mal auf MSDN schauen oder die DOS-Variable %USERNAME% (sofern unter Win9x vorhanden) benutzen.
Unter Windows 2000 - XP kannst du die Funktion GetSpecialFolder
Evtl. interessant für dich:
Windows-Sprache herausfinden
Hoffe das ich helfen konnte!
Bye,
|
|
Der Jan
      
Beiträge: 98
Win2k prof, WinXP prof, Linux
D6 Prof, BCB4 Std, BCB6 Ent, BDS 2006 Ent
|
Verfasst: Fr 06.01.06 09:16
Hab grad noch mal fix gesucht, hier ist das Tutorial zu XML mit TjvSimpleXML...
_________________ Gruß, Jan
|
|
Andreas L.
      
Beiträge: 1703
Erhaltene Danke: 25
Windows Vista / Windows 10
Delphi 2009 Pro (JVCL, DragDrop, rmKlever, ICS, EmbeddedWB, DEC, Indy)
|
Verfasst: Fr 06.01.06 09:35
Der Jan hat folgendes geschrieben: | | Hab grad noch mal fix gesucht, hier ist das Tutorial zu XML mit TjvSimpleXML... |
ich glaube er will nicht wissen wie man diverse Komponenten oder Units zum speichern benutzt, sondern er will wissen wie man die Ordner herausfindet, dass jeder User seine eigenen Einstellungen hat. Siehe %HomeDir% - das unbekannte Verzeichnis (von Luckie).
|
|
Der Jan
      
Beiträge: 98
Win2k prof, WinXP prof, Linux
D6 Prof, BCB4 Std, BCB6 Ent, BDS 2006 Ent
|
Verfasst: Fr 06.01.06 09:40
Nun, ich hab es so verstanden, das er allgemeine Tips sucht.
Für die Ordner gibt es eine Funktion, SHGetSpecialFolderLocation (oder so ähnlich) mit der man eben jenes macht...
_________________ Gruß, Jan
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Fr 06.01.06 12:52
PassingStranger hat folgendes geschrieben: | | Nun zu meiner Frage: Gibt es eine hier allgemein gültige (=anerkannte) Auffassung, wie Anwendungsdaten unter allen bekannten Windows (32 Bit ff.) -Betriebssystemen zu speichern sind? |
Nun zu meiner Antwort: Die Registry. Dafür ist sie nun mal da. Die ist seit Win 95 dabei.
PassingStranger hat folgendes geschrieben: | | Ich schliesse die Registry für diesen Zweck definitiv aus, da ich Konfigurationsdateien absolut den Vorzug gebe. |
Und warum schließt du diese definitiv aus? Mich würden die wirkichen Argument interessieren und nicht solche Aussagen wie "die Registry mag ich nun mal nicht" oder so.
Lg Martin
_________________ Ein Nutzer der Ecke
|
|
noidic
      
Beiträge: 851
Win 2000 Win XP Vista
D7 Ent, SharpDevelop 2.2
|
Verfasst: Fr 06.01.06 12:57
Ein Grund könnte sein, dass Microsoft die Registry in Zukunft zumindest für Benutzerinstellungen ablösen will, und zwar durch XML-Dateien ( steht zumindest so in meinem .NET-Buch von MS-Press )
_________________ Bravery calls my name in the sound of the wind in the night...
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Fr 06.01.06 12:59
Gibt es dazu zufällig noch eine andere Quelle (Online) als das Buch?
_________________ Ein Nutzer der Ecke
|
|
noidic
      
Beiträge: 851
Win 2000 Win XP Vista
D7 Ent, SharpDevelop 2.2
|
Verfasst: Fr 06.01.06 13:05
Ich weiss leider keine andere. Das Buch ist jedenfalls der '.NET Crashkurs' von Microsoft Press. Wenn man sich die Möglichkeiten der Anwendungskonfiguration in .NET ansieht, scheint mir das aber auch plausibel.
Das is aber eh Zukunftsmusik. Solang erstmal nur alles bekannte von MS ab Win95 unterstützt werden soll is die Registry schon die richtige Wahl.
_________________ Bravery calls my name in the sound of the wind in the night...
|
|
|