Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Konfig-File Plattformübergreifend (https://www.delphipraxis.net/202130-konfig-file-plattformuebergreifend.html)

TigerLilly 1. Okt 2019 11:42

Konfig-File Plattformübergreifend
 
Gibt es eine plattformübergreifende Kapselung von TIniFile (bzw etwas ähnlichem), das die Benutzerpfade und Zugriffsoptionen der unterschiedlichen Plattformen berücksichtig?

Ich würde gerne Basis-Einstellungen meiner App aus einer Konfig-Datei auslesen.

Danke für jeden Tipp!

Der schöne Günther 1. Okt 2019 11:51

AW: Konfig-File Plattformübergreifend
 
TIniFile ist im Endeffekt nur ein StringListe mit ein paar Komfortfunktionen. Wo du die hinlegst bzw. von wo du sie lädst musst du explizit angeben, du bist völlig frei. Was soll es berücksichtigen?

TigerLilly 1. Okt 2019 12:02

AW: Konfig-File Plattformübergreifend
 
Unter Windows/iOS/OSx/Linux/Android funktioniert der Zugriff auf Benutzerdateien anders und die Dateien liegen in anderen Ordnern.

Daniel 1. Okt 2019 12:32

AW: Konfig-File Plattformübergreifend
 
Völlig korrekt. Das ist dann aber keine Aufgabe der TIniFile bzw. TMemIniFile, sondern die Frage nach dem korrekten Pfad.
In der Unit System.IOUtils.pas findest Du z.B. mit TPath einen nZugang zu den jeweiligen Ordnern auf den diversen Systemen.

philipp.hofmann 1. Okt 2019 13:21

AW: Konfig-File Plattformübergreifend
 
Ich verwende z.B. unter Windows
System.IOUtils.TPath.GetSharedDocumentsPath() + Unterverzeichnis für die App
unter iOS
System.IOUtils.TPath.GetDocumentsPath() (kein Extra-Unterverzeichnis für die App, da es schon in einem Unterverzeichnis ist)
und MacOS und Linux
System.IOUtils.TPath.GetPublicPath() + Unterverzeichnis für die App

TigerLilly 1. Okt 2019 14:00

AW: Konfig-File Plattformübergreifend
 
Ok, gut. Und dort erzeugst du dann nach Belieben deine Dateien?

Sherlock 1. Okt 2019 14:49

AW: Konfig-File Plattformübergreifend
 
Ja

Sherlock


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:52 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