Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Datei _sofort_ speichern (https://www.delphipraxis.net/14865-datei-_sofort_-speichern.html)

nailor 16. Jan 2004 23:48


Datei _sofort_ speichern
 
Wie kann ich eine Datei so speichern, dass sie augenblicklich auf die Festplatte geschrieben wird, ohne das Windows noch irgendwelche Puffer o.ä. zwischenschaltet. Das heißt, wenn ich die Prozedur mit dem Speichern beendet habe, soll das auch so in der Datei stehen, egal ob ich den Strom abklemme, in der IDE Strg-F2 drücke oder sonst was mache...

Christian Seehase 16. Jan 2004 23:57

Re: Datei _sofort_ speichern
 
Moin Nailor,

dazu solltest Du Dir mal die API FlushFileBuffers anschauen.
Allerdings kann Dir das eventuell noch, unabhängig von Windows, durch den Schreibcache der Festplatte ausgehebelt werden.
Der wird wohl meist aktiviert sein.

w3seek 17. Jan 2004 11:34

Re: Datei _sofort_ speichern
 
oeffne die datei mal mit CreateFile() und dem Flag FILE_FLAG_WRITE_THROUGH - bin mir nicht 100% sicher aber lt. beschreibung muessten dann alle Schreiboperationen ohne Cache verlaufen.

nailor 17. Jan 2004 12:30

Re: Datei _sofort_ speichern
 
Hab ich beides getan. Aber es hat bei meinen Tests noch nichts bewirkt. Vielleicht klappt es, wenn ich die Datei schließe und danach sofort wieder öffne?

nailor 22. Jan 2004 15:06

Re: Datei _sofort_ speichern
 
habs noch ein bisschen probiert. das einzige, was wirklich wirkt, ist das schließen und anschließende erneute öffnen


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