FltRegisterFilter 函式 (fltkernel.h)
FltRegisterFilter 會註冊迷你篩選驅動程式。
語法
NTSTATUS FLTAPI FltRegisterFilter(
[in] PDRIVER_OBJECT Driver,
[in] const FLT_REGISTRATION *Registration,
[out] PFLT_FILTER *RetFilter
);
參數
[in] Driver
迷你篩選驅動程式之驅動程序物件的指標。 這應該是當做輸入傳遞至迷你篩選器驅動程式 DriverEntry 例程的相同驅動程式對象指標。
[in] Registration
呼叫端配置的迷你篩選驅動程式註冊結構的指標, (FLT_REGISTRATION) 。
[out] RetFilter
呼叫端配置的變數指標,可接收呼叫端的不透明篩選指標。
傳回值
FltRegisterFilter 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,例如下列其中一項:
傳回碼 | Description |
---|---|
|
FltRegisterFilter 發生集區配置失敗。 這是錯誤碼。 |
|
下列其中之一:
|
|
篩選條件嘗試註冊時,篩選管理員未初始化。 請確定篩選管理員已載入為驅動程式。 這是錯誤碼。 |
|
登錄中找不到篩選服務金鑰。
-或- 篩選實例未註冊。 |
備註
每個迷你篩選驅動程式都必須從其 DriverEntry 例程呼叫 FltRegisterFilter,以將本身新增至已註冊迷你篩選驅動程式的全域清單,並提供篩選管理員回呼函式清單,以及迷你篩選驅動程式的其他資訊。
FltRegisterFilter 會傳回 *RetFilter 中迷你篩選驅動程式的不透明篩選指標。 此指標值可唯一識別迷你篩選驅動程式,只要載入迷你篩選驅動程式,就會維持不變。 minifilter 驅動程式應該儲存此指標,因為它是 FltStartFiltering 和 FltUnregisterFilter 的必要參數。
呼叫 FltRegisterFilter 之後,迷你篩選驅動程式通常會呼叫 FltStartFiltering 以開始篩選 I/O 作業。
迷你篩選驅動程式只能呼叫 FltRegisterFilter 來註冊本身,而不是另一個迷你篩選驅動程式。
若要取消註冊本身,迷你篩選驅動程式會呼叫 FltUnregisterFilter.。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | fltkernel.h (包含 Fltkernel.h) |
程式庫 | FltMgr.lib |
Dll | Fltmgr.sys |
IRQL | <= APC_LEVEL |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應