Einzelnen Beitrag anzeigen

devidespe

Registriert seit: 7. Sep 2006
Ort: Berlin
434 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Datei physikalisch lesen/schreiben ohne den Windows-Cach

  Alt 14. Nov 2007, 17:48
Vielleicht war die gewünschte Aufgabe meiner Anwendung falsch umschrieben.

Eine Teilapplikation soll bspw. die Lesegeschwindigkeit der USB-Medien und auch einer zuvor gebrannten CD ermitteln. Dafür wird die Testdatei eingelesen und die Zeit ermittelt, die dafür benötigt wird. Nehmen wir einmal an, dieser Vorgang dauert für eine 16 MByte Datei 5 Sekunden. Beim zweiten Einlesevorgang nimmt Windows die Datei aber aus seinem Datei-Cache und ich erhalte eine Lesezeit von 0,01 Sekunden - das verfälscht mein Ergebnis auf unerwünschte Art und Weise.

Wenn die CreateFile-Methode bedeutet, dass ich mich mit Dateisystemen und Sektoren rumschlagen muss, ist die Sache den Aufwand nicht Wert.

Mir ist auch keine Windows API-Funktion bekannt, um den Dateisystemcache für bestimmte Laufwerke abzuschalten (was allerdings ohne Neustart erfolgen müsste).

@shmia: Deinen Vorschlag mit dem Stream muss ich ausprobieren, er klingt auch recht vielversprechend. Info folgt dann hier in dieser Diskussion.
Devid
  Mit Zitat antworten Zitat