Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TIniFile.ReadString erzeugt Schreibzugriff ? (https://www.delphipraxis.net/81485-tinifile-readstring-erzeugt-schreibzugriff.html)

himitsu 28. Nov 2006 21:47

Re: TIniFile.ReadString erzeugt Schreibzugriff ?
 
Also ich bin auf TMemIniFile umgestiegen.

Erstens öffnet TIniFile anscheinend immer mit Schreibrechten (wie bemerkt)
und dann wird die Datei bei jedem Zugriff (jedem Read.../Write...) geöffnet, gelesen/geschrieben und wieder geschlossen, was nicht gerade schnell ist - vorallem bemerkbar wenn die INI auf 'nem langsamen Datenträger liegt.

(TIniFile.Create hinterlegt nur den Dateinamen im Objekt)



TMemIniFile ließt bei TMemIniFile.Create die Datei einmalig (mit Leserechten) aus, der Rest läuft alles in der Kopie im RAM ab.
Geschrieben wird nur in Ini.UpdateFile.

Der_Unwissende 29. Nov 2006 07:10

Re: TIniFile.ReadString erzeugt Schreibzugriff ?
 
Zitat:

Zitat von himitsu
Erstens öffnet TIniFile anscheinend immer mit Schreibrechten (wie bemerkt)
und dann wird die Datei bei jedem Zugriff (jedem Read.../Write...) geöffnet, gelesen/geschrieben und wieder geschlossen, was nicht gerade schnell ist - vorallem bemerkbar wenn die INI auf 'nem langsamen Datenträger liegt.

Wobei hier auch klar betont werden sollte, dass du damit immer alle Änderungen sofort stattfinden, man also immer auf der selben Datenbasis arbeitet und alle Änderungen sofort gespeichert werden (irgendwer hat da schon in anderen Threads immer wieder drauf aufmerksam gemacht). Ein TMemInifile ist sicherlich bei reinem Lesen geeigneter, aber auch hier könnte ja eine zweite Anwendung ein Datum in der Ini verändern ohne dass man dies bemerkt und Änderungen werden nur mit dem Update geschrieben (dass z.B. bei einem Fehler nicht immer aufgerufen wird).

hoika 29. Nov 2006 07:24

Re: TIniFile.ReadString erzeugt Schreibzugriff ?
 
Hallo,

TMemIniFile habe ich jetzt eingebaut.
Jetzt meckert der app verifier nicht mehr ;)

Aber. Schreibzugriff auf Registry (HCLM) irgendwo bei Multimedia (Joystick).
Also ich bin das nicht !!!
Was zur Hölle macht Delphi da,
mit Multimedia hat mein Programm überhaupt nix zu tun.
Das ist schon im RTL-Code! Sauerei! :wall: :wall:


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr.
Seite 2 von 2     12   

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