FltProcessFileLock 関数 (fltkernel.h)
FltProcessFileLock ルーチンが処理し、ファイル ロック操作を完了します。
構文
FLT_PREOP_CALLBACK_STATUS FLTAPI FltProcessFileLock(
[in] PFILE_LOCK FileLock,
[in] PFLT_CALLBACK_DATA CallbackData,
[in, optional] PVOID Context
);
パラメーター
[in] FileLock
ファイルの FILE_LOCK 構造体へのポインター。 この構造体は、FltAllocateFileLock または FltInitializeFileLock
[in] CallbackData
IRP_MJ_LOCK_CONTROL 操作のコールバック データ (FLT_CALLBACK_DATA) 構造体へのポインター。
[in, optional] Context
操作の完了時に使用されるコンテキスト ポインター。 このコンテキスト ポインターは、
戻り値
FltProcessFileLock
リターン コード | 形容 |
---|---|
FLT_PREOP_COMPLETE | フィルター マネージャーは、CallbackDataで実行されます。これで完了です。 |
FLT_PREOP_DISALLOW_FASTIO | CallbackData は高速 I/O 操作を表し、スタック内のミニフィルター ドライバーでは、この操作に使用する高速 I/O が許可されていません。 フィルター マネージャーは、操作を許可していないミニフィルター ドライバーの下に操作を送信しません。 この場合、フィルター マネージャーは、高速 I/O 操作を許可しないミニフィルター ドライバーの上にあるミニフィルター ドライバーのポスト操作コールバック ルーチン (および CompleteLockCallbackDataRoutine コールバック) のみを呼び出します。 |
FLT_PREOP_PENDING | ロック操作が終了しました。 |
備考
FltProcessFileLock
ロック解除操作の場合、フィルター マネージャーは、呼び出し元が FltAllocateFileLockを
ロック操作が完了すると、フィルター マネージャーは、呼び出し元が FltAllocateFileLockへの以前の呼び出しで
CallbackData が高速 I/O 操作を表しているかどうかを確認するには、FLT_IS_FASTIO_OPERATION マクロを使用します。
新しいファイル ロック構造を割り当てて初期化するには、FltAllocateFileLock
初期化された
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows XP with SP2 |
サポートされる最小サーバー | Windows Server 2003 with SP1 |
ターゲット プラットフォーム の |
万国 |
ヘッダー | fltkernel.h (Fltkernel.h を含む) |
ライブラリ | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |
関連項目
FltAllocateFileLock の
FltCheckLockForReadAccess の
FltCheckLockForWriteAccess の
FltFreeFileLock を
FltInitializeFileLock の
FltUninitializeFileLock の
PFLT_COMPLETE_LOCK_CALLBACK_DATA_ROUTINE
[PUNLOCK_ROUTINE](../ntifs/nc-ntifs-punlock_routine.md