Hallo

Welkom, Gast. Alsjeblieft inloggen of registreren.

Recent

504 gasten, 0 leden

Welkom, Gast. Alsjeblieft inloggen of registreren.

28 april 2024, 23:43:02

Login met gebruikersnaam, wachtwoord en sessielengte

Nieuws

Welkom op het vernieuwde NL Computer Forum!

Auteur Topic: INI files  (gelezen 10247 keer)

0 leden en 1 gast bekijken dit topic.

Offline NLCOMP

  • Forumheld
  • *****
  • Berichten: 14.666
    • NL Computer Forum
INI files
« Gepost op: 9 november 2009, 20:38:44 »
Bericht 1 van 5

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:29-03-2009
 Aan:AllenMsgID:4213.1
 Onderwerp:INI filesForum:ws-nlcomputer
Hallo,

Een vreemd verschijnsel met een eigen delphi programma, gemaakt op win98.
Als ik dit op winXP draai, dan duurt het opslaan in INI files erg lang. 1 bepaalde INI-file duurt pakweg 10 seconden op winXP en minder dan een seconde op win98.
Verschillende winXP machines geprobeerd, allemaal even 'langzaam' tov win98. De winXP machines zijn uiteraard nieuwer, sneller en meer intern geheugen.
De betreffende INI file is pakweg 30KB groot.

Nadat ik deze INI file opgesplitst heb in een aantal losse, is voor het opslaan geen 10 seconden meer nodig maar nog maar 1 seconde. Met de losse INI files is wel te werken maar 1 INI is natuurlijk veel handiger.


Wat kan dit verschil veroorzaken?


groeten, Peter




Bericht 2 van 5

NL Computer Forum ~ SQL & Programmeren
 Van:Michel Uphoff (Sysop)Datum:30-03-2009
 Aan:PeterMsgID:4213.2
 Onderwerp:INI filesForum:ws-nlcomputer
Hoi Peter,
Mogelijk heb je hier wat aan:
Parsing an INI file under XP/2003/Vista is comparatively slow. Each time you read or write a value in an INI file, the file has to be loaded into memory and parsed. If you write three strings to an INI file, that INI file got loaded and parsed three times and got written out to disk three times.
In 16-bit Windows, three consecutive INI file operations would result in only one parse and one write, because the operating system was co-operatively multi-tasked. When you accessed an INI file, it was parsed into memory and cached. The cache was flushed when you finally yielded CPU to another process.
Many programs open INI files and read them directly. This means that the INI file format is locked and cannot be extended.
INI files are limited to 32KB in size.

Michel Uphoff (NLcomputer)
Homepage



Bericht 3 van 5

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:30-03-2009
 Aan:Michel Uphoff (Sysop)MsgID:4213.3
 Onderwerp:INI filesForum:ws-nlcomputer
Hoi Michel,

Bedankt voor de info. Ik doe het voorlopig maar met meerdere kleine INI files.
Jammer dat zo'n eenvoudig, simpel te programmeren, en simpel te bewerken onderdeel zo slecht doorontwikkelt wordt
Het beleid van MS om alles maar in de registry te dumpen kan ik al helemaal niet volgen, laat staan uitvoeren.

Of ik maak nog eens een INI-parser om de hele INI ineens te lezen, meerdere aanpassingen doen, en dan schrijven.
 

groeten, Peter



Bericht 4 van 5

NL Computer Forum ~ SQL & Programmeren
 Van:Michel Uphoff (Sysop)Datum:30-03-2009
 Aan:PeterMsgID:4213.4
 Onderwerp:INI filesForum:ws-nlcomputer
Hoi Peter
>> Of ik maak nog eens een INI-parser om de hele INI ineens te lezen <<
Dat is de manier waarop ik het doe. Ik laat de applicatie gewoon de inhoud van alle variabelen in het geheugen opslaan, en alleen bij starten/afsluiten (of soms bij gevoelige acties in run-time) alle setting variabelen inlezen of in een file dumpen. Dat ik vervolgens zo'n file de extensie ini geef is voor mijn gemak, maar het kan net zo goed een .txt bestandje zijn.
>> Het beleid van MS om alles maar in de registry te dumpen kan ik al helemaal niet volgen <<
Een registry is natuurlijk wel veel fijnmaziger (rechten toekennen in een deel van de registry is dan bijvoorbeeld mogelijk), maar ik ben het met je eens dat Ms (e.v.a.) de duvel en z'n ouwe moer maar in de registry plettert (en opruimen, ho maar), waardoor het een van de zwakkere (want overgecompliceerd en systeemkritisch) plekken in het OS is geworden.

Michel Uphoff (NLcomputer)
Homepage



Bericht 5 van 5

NL Computer Forum ~ SQL & Programmeren
 Van:PeterDatum:30-03-2009
 Aan:Michel Uphoff (Sysop)MsgID:4213.5
 Onderwerp:INI filesForum:ws-nlcomputer
Het opslaan van bepaalde waardes hangt weer van gebruikersakties af dus vergt wat meer denk en rekenwerk om dit aan te passen.
 
>>Dat ik vervolgens zo'n file de extensie ini geef is voor mijn gemak, maar het kan net zo goed een .txt bestandje zijn.<<
Dat is mij bekend


groeten, Peter