![]() |
Daten-Dateien - wo speichern?
Hallo,
ich habe ein Programm, dass sowohl globale als auch benutzerspezifische Daten lesen und speichern soll. Wo soll ich die Dateien speichern und wie stelle ich sicher, dass auch alle Benutzer die globalen Daten lesen und schreiben können? Ist %APPDATA% der richtige Ort für die benutzerspezifischen Daten? Es handelt sich um eine normale Anwendung, die mit Administratorrechten installiert und dann mit "normalen" Benutzerrechten benutzt werden soll. An den Registrierungsdateien möchte ich keine Änderungen vornehmen. Funktionieren sollte das ganze nach Möglichkeit mit Deplphi 3 unter Windows 95 bis Vista. Schon mal vielen Dank, für Eure Hilfe. torf160 |
Re: Daten-Dateien - wo speichern?
GLobale Daten in das Verzeichnis für alle User und die anderen Daten in das Verzeichnis des aktuellen Users. Da musst du wohl mit 2 Dateien arbeiten. ;)
|
Re: Daten-Dateien - wo speichern?
Das ist schon der richtige Ort, aber nach NT (2000 und höher) und Win9x müsstest du schon ggf. unterscheiden.
![]() Wenn du es richtig anstellst, dann kannst du es auch dem Benutzer überlassen, ob die Daten im eigenen Verzeichnis portabel oder den Richtlinien nach in den Anwendungsdaten gespeochert werden sollen: ![]() (Leider bin ich da noch nicht dazu gekommen das fertigzustellen.) In dem zweiten Link stehen auch die einzelnen Möglichkeiten für die Daten. |
Re: Daten-Dateien - wo speichern?
Das was hier gennant wird, ist ja alles soweit OK. Ich frage mich nur immer, wie machen das die Softwarehersteller. Wir z.B. nutzen eine Software, ein ganz neu entwickeltes Tool zur Steuerung von Zutrittskontrollsystemen, welche meistens ins Netzwerk integriert werden.
Die Datenbank der Software liegt allerdings Standartmäßig im Prgrammverzeichnis, was hier allerdings immer wieder als falsch und Vorallem als eventuell Fehlerhaft bewertet wird. Die Software der Zutrittskontrolle hat folgendes Verzeichnis: C:\Programme\Novar\IQMultiAccess\Date\IQDat.fdb und die Software der Einbruchmeldetechnik C:\Programme\Novar\Winfem\User.fdb selbst Delhpi, hat in den Anwendungsdaten nicht alles gespeichert. Die gesamte LIB etc. befindet sich unter Programme. |
Re: Daten-Dateien - wo speichern?
@Christian: mehrere Dateien will ich ja auch benutzen.
@Sebastian Jänicke: Das mit dem GetSpecialFolder hab ich hinbekommen und ich würde die Dateien auch gerne in C:\Dokumente und Einstellungen\All Users\Anwendungsdaten schreiben. Es sieht aber so aus, als ob ein normaler Benutzer dort auch nur Lese-Rechte hat. Es soll ja aber möglich sein, die Dateien neu zu schreiben. Ist es denn möglich unter Delphi (Vers. 3) die Rechte zu verändern? torf160 |
Re: Daten-Dateien - wo speichern?
Moin Jens,
Zitat:
Wenn die Daten dort nur gelesen werden sollen, ist es unproblematisch. [EDIT] Daten, die alle User betreffen gehören zwar in den "All Users"-Bereich, aber es auch nicht üblich, dass ein Anwender Daten eines Programmes global ändert. So gesehen ist das fehlende Schreibrecht dort auch kein Problem [/EDIT] |
Re: Daten-Dateien - wo speichern?
Zitat:
|
Re: Daten-Dateien - wo speichern?
Zitat:
Deshalb braucht Delphi ab 2005 auch keine Administratorrechte. Das alte Delphi 7 und früher hat den Fehler gemacht, dass es das aktuelle Arbeitsverzeichnis benutzt hat als Projektverzeichnis, was u.a. die Inkompatibilität mit Vista verursacht hat. Das ist jetzt aber auch schon 8 Jahre oder so alt, deshalb ist das heute ja nicht mehr so schlimm. Aber man kann das ![]() Aber wer will das schon :lol: , da fehlen ja ohnehin viele Sachen, sowohl in der IDE als auch in der Sprache. Das merke ich ja, wenn ich irgendwie zumindest den größten Teil der Funktionalität von Komponenten auch dort noch anzubieten versuche. Zitat:
![]() Als Ausweg blieben (wenn die Daten wirklich für alle Benutzer gelten müssen) die öffentlichen Dokumente (CSIDL_COMMON_DOCUMENTS = $2E), in denen Schreibrechte bestehen. Das ist ja auch der Grund, weshalb Codegear diese mit dem Rad Studio nutzt. Allerdings sind diese ggf. freigegeben, deshalb ist es eher sinnvoll, diese nur zum Datenaustausch zu verwenden, d.h. zum Beispiel dort eine Kopie abzulegen, die dann ggf. ins eigene Profil kopiert werden kann, wenn ein Benutzer das Programm startet. Sinnvoll ist da dann auch eher ein Server, auf dem die entsprechenden Rechte für alle Benutzer gesetzt sind. // EDIT: Zitat:
|
Re: Daten-Dateien - wo speichern?
Das waren nicht Fehler früher war das halt so.
|
Re: Daten-Dateien - wo speichern?
Zitat:
Delphi 7 kam dann anderthalb Jahre später im August 2002 raus, da hätte das eigentlich korrigiert sein müssen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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