The LockFile function locks a region in an open file. Locking a region prevents other processes from accessing the region.
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 |
); |
Parameters
hFile
Identifies the file with a region to be locked. The file handle must have been created with GENERIC_READ or GENERIC_WRITE access to the file (or both).
dwFileOffsetLow
Specifies the low-order word of the starting byte offset in the file where the lock should begin.
dwFileOffsetHigh
Specifies the high-order word of the starting byte offset in the file where the lock should begin.
nNumberOfBytesToLockLow
Specifies the low-order word of the length of the byte range to be locked.
nNumberOfBytesToLockHigh
Specifies the high-order word of the length of the byte range to be locked.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
Locking a region of a file gives the locking process exclusive access to the specified region. File locks are not inherited by processes created by the locking process.
Locking a region of a file denies all other processes both read and write access to the specified region. Locking a region that goes beyond the current end-of-file position is not an error.
Locks may not overlap an existing locked region of the file.
The UnlockFile function unlocks a file region locked by LockFile.
See Also