Entwickler-Ecke

Windows API - Api-Funktion LockFile


MoreThanWords - Di 03.09.02 08:14
Titel: Api-Funktion LockFile
Hallo Zusammen :?

Mit der Methode Lockfile() kann ich Dateisegmente sperren.

Quelltext
1:
2:
3:
4:
5:
6:
7:
BOOL LockFile(
    HANDLE hFile,                  // handle of file to lock
    DWORD dwFileOffsetLow,  // low-order word of lock region offset
    DWORD dwFileOffsetHigh,  // high-order word of lock region offset
    DWORD nNumberOfBytesToLockLow, // low-order word of length to lock
    DWORD nNumberOfBytesToLockHigh  // high-order word of length to lock
   );

Beim Parameter hFile wird die Dateiparameter erwartet, den ich über FindFirst() ermittelt habe.

Die nächsten Parameter sind für den Dateibereich.

Kann mir jemand vielleicht ein paar Tips geben, was die letzteren Parameter erwarten, und wie ich an diese Werte komme, wenn ich z.B. die 3 von 5 Zeilen sperren möchte.

Dankeschön


OregonGhost - Mi 04.09.02 19:42

Also, der erste Parameter muss ein ordentlicher Dateihandle sein. CreateFile() liefert so einen zurück.

Dateien haben eigentlich keine Zeilen. Wenn du wirklich Zeilen sperren willst, musst du ermitteln, wie lang die Zeilen sind, und zwar inklusive Zeilenumbruch, dass heißt, du musst die entsprechenden Zeilenumbrüch suchen. Die letzten beiden Parameter geben folglich diese Länge in Bytes an. Wenn die Zeilen weniger als vier Gigabyte lang sind, kannst du für den letzten Parameter 0 übergeben (ebenso für den dritten Parameter, wenn du bei weniger als vier Gigabyte anfängst, zu sperren).


MoreThanWords - Mi 09.10.02 19:27

Schankedön