FltReuseCallbackData 函式 (fltkernel.h)
FltReuseCallbackData 例程重新初始化回呼數據結構,以便重複使用。
語法
VOID FLTAPI FltReuseCallbackData(
[in, out] PFLT_CALLBACK_DATA CallbackData
);
參數
[in, out] CallbackData
要重複使用的回呼資料 (FLT_CALLBACK_DATA) 結構的指標。 此結構必須由先前呼叫 FltAllocateCallbackData來配置。 這是必要參數,而且無法 NULL。
傳回值
沒有
言論
FltReuseCallbackData 重新初始化回呼數據 (FLT_CALLBACK_DATA) 結構,使其可用於新的 I/O 作業。 FltReuseCallbackData 不會變更回呼數據結構 I/O 參數區塊的 TargetInstance 字段或 TargetFileObject 字段。
FltReuseCallbackData 例程會釋放與 所提供之 callbackData 對象相關聯的任何 MDL 鏈結。 在呼叫 該物件的 FltReuseCallbackData 之後,與 FLT_CALLBACK_DATA 對象相關聯的 MDL 鏈結指標將會無效。
使用 FltReuseCallbackData 重複使用回呼數據結構的速度比釋放結構及配置新回呼數據結構更快。
小型篩選驅動程式應該只在小型篩選驅動程式先前配置給 FltAllocateCallback Data 的回呼數據結構上使用 FltReuseCallbackData,並在 呼叫 fltPerformSynchronousIo 或 FltPerformAsynchronousIo時使用。
如果回呼數據結構用於異步 I/O,小型篩選驅動程式不應該呼叫 FltReuseCallbackData,直到呼叫 FltPerformAsynchronousIo 中指定的 CallbackRoutine 為止。
特別是,迷你篩選驅動程式不應該將此例程用於迷你篩選驅動程式本身未配置的任何回呼數據結構。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
標頭 | fltkernel.h (包括 Fltkernel.h) |
連結庫 | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |