FsRtlInitializeFileLock 函式 (ntifs.h)
FsRtlInitializeFileLock 例程會初始化FILE_LOCK結構。
語法
void FsRtlInitializeFileLock(
[in] PFILE_LOCK FileLock,
[in, optional] PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine,
[in, optional] PUNLOCK_ROUTINE UnlockRoutine
);
參數
[in] FileLock
未初始化 FILE_LOCK 結構的指標。
[in, optional] CompleteLockIrpRoutine
PCOMPLETE_LOCK_IRP_ROUTINE型別回呼例程的指標,在完成 IRP_MJ_LOCK_CONTROL 要求時呼叫。 這個參數是選擇性的,而且可以是 NULL。
[in, optional] UnlockRoutine
當位元組範圍解除鎖定時,要呼叫之 PUNLOCK_ROUTINE型別回呼例程的指標。 這個參數是選擇性的,而且可以是 NULL。
傳回值
沒有
言論
FsRtlInitializeFileLock 初始化未初始化FILE_LOCK結構。
呼叫
初始化之後,FILE_LOCK 結構可以藉由呼叫 FsRtlProcessFileLock 或FsRtlFastLock來鎖定檔案中的位元組範圍。 FsRtlProcessFileLock 進程鎖定 IRP。 FsRtlFastLock 執行非 IRP 鎖定。
不再需要 FILE_LOCK 結構時,可以呼叫 FsRtlUninitializeFileLock來取消初始化。 然後,您可以呼叫 FsRtlInitializeFileLock,初始化未初始化的FILE_LOCK結構以供重複使用。
迷你篩選程序必須呼叫 FltInitializeFileLock,而不是 FsRtlInitializeFileLock。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
標頭 | ntifs.h (include Ntifs.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDIs(storport) |