WriteFile() gezielt einsetzen
-
Folgendes Problem:
ich habe eine Datei. Darin steht ganz vorne ein DWORD-Wert n. Danach folgen n __int64-Werte.
Ich möchte nun den DWORD-Wert n um eins erhöhen und am Ende der Datei einen weiteren __int64-Wert anhängen.
Im Moment verwende ich eine 2te Datei, in der ich die Daten zwischenspeichere und anschließend lösche. Gibt es eine Möglichkeit, wie ich die ersten 4 Bytes einer Datei ändern kann, ohne den restlichen Dateninhalt zu verändern? Anschließend müßte ich das den Cursor auf das Ende der Datei zeigen lassen, um dort einen weiteren Wert einzufügen.
-
du offnest das file (auf keinen fall mit CREATE_NEW flag, denn dann ist dein file danach leer), seekst an den anfang (SetFilePointerEx - gleich nach dem OpenFile steht der file pointer immer am anfang) überschreibst dann das DWORD mit dem neuen wert, seekst ans ende der datei und hängst dort den neuen wert hinzu