Freigeben über


CFile::LockRange

Sperrt einen Bereich von Bytes in einer geöffneten Datei und löst eine Ausnahme aus, wenn die Datei bereits gesperrt ist.

virtual void LockRange(
   ULONGLONG dwPos,
   ULONGLONG dwCount 
);

Parameter

  • dwPos
    Der Byteoffset Start des Bytebereichs auf die Sperre.

  • dwCount
    Die Anzahl von Bytes im Bereich zu sperren.

Hinweise

Sperrenbytes in einer Datei verhindert Zugriff auf diese Bytes durch andere Prozesse.Sie können mehr als einen Bereich einer Datei sperren, aber keine überlappenden Bereiche sind zulässig.

Wenn Sie entsperren, muss der Bereich, mit der UnlockRange-Memberfunktion, der Bytebereich zum Bereich genau entsprechen, der zuvor gesperrt wurde.Die Funktion wird nicht LockRange angrenzenden Bereichen zusammen; Wenn zwei gesperrte Bereiche benachbart sind, müssen Sie jeden Bereich separat entsperren.

HinweisHinweis

Diese Funktion ist nicht für CMemFile von abgeleitete Klasse verfügbar.

Beispiel

CFile cfile;
cfile.Open(_T("LockRange_File.dat"), CFile::modeCreate |
   CFile::modeReadWrite);
ULONGLONG dwPos = 10;
ULONGLONG dwCount = 100;
cfile.LockRange(dwPos, dwCount);

// do something with the file

cfile.UnlockRange(dwPos, dwCount);

Anforderungen

Header: afx.h

Siehe auch

Referenz

Die C-Datei Klasse

Hierarchien-Diagramm

CFile::UnlockRange