FwpmBfeStateSubscribeChanges0 函式 (fwpmk.h)
FwpmBfeStateSubscribeChanges0 函式會註冊每當篩選引擎狀態變更時呼叫的回呼函式。
警告
請勿從您傳入 回呼 參數的回調函式呼叫 FwpmBfeStateUnsubscribeChanges0。 這樣做可能會導致死結。
語法
NTSTATUS FwpmBfeStateSubscribeChanges0(
[in, out] void *deviceObject,
[in] FWPM_SERVICE_STATE_CHANGE_CALLBACK0 callback,
[in, optional] void *context,
[out] HANDLE *changeHandle
);
參數
[in, out] deviceObject
圖說文字驅動程式先前建立之裝置物件的指標。 如需圖說文字驅動程式如何建立裝置物件的詳細資訊,請參閱 建立裝置物件。
[in] callback
圖說文字驅動程式提供之服務狀態變更回呼函式的指標。 每當篩選引擎的狀態有所變更時,篩選引擎就會呼叫此函式。
服務狀態變更回呼函式會宣告如下。
VOID NTAPI
callback(
IN OUT void *context,
IN FWPM_SERVICE_STATE newState
);
上下文
當圖說文字驅動程式呼叫 FwpmBfeStateSubscribeChanges0 函式時,傳入 Context 參數中的指標。
newState
篩選引擎的新狀態。 此參數包含下列其中一個值:
FWPM_SERVICE_STOPPED
篩選引擎未執行。
FWPM_SERVICE_START_PENDING
篩選引擎正在啟動。
FWPM_SERVICE_STOP_PENDING
篩選引擎正在停止。
FWPM_SERVICE_RUNNING
篩選引擎正在執行。
[in, optional] context
圖說文字驅動程式所提供內容的指標,傳遞至 Callback 參數中指定的回呼函式。
[out] changeHandle
接收與回呼函式註冊相關聯句柄之變數的指標。 圖說文字驅動程式會將此句柄傳遞給 FwpmBfeStateUnsubscribeChanges0 函式,以取消註冊回呼函式。
傳回值
FwpmBfeStateSubscribeChanges0 函式會傳回下列其中一個 NTSTATUS 代碼:
傳回碼 | 描述 |
---|---|
STATUS_SUCCESS | 已成功註冊回呼函式。 |
其他 NTSTATUS 代碼 | 發生錯誤。 |
言論
圖說驅動程式會呼叫 FwpmBfeStateSubscribeChanges0 函式,以註冊每當篩選引擎狀態變更時呼叫的回呼函式。
例如,除非篩選引擎目前正在執行,否則圖說文字驅動程式無法藉由呼叫 FwpmEngineOpen0 函式來開啟篩選引擎的會話。 圖說驅動程式可以使用 FWPM_SERVICE_RUNNING 通知來開啟篩選引擎的會話,以便呼叫其他 Windows 篩選平臺管理功能。 同樣地,圖說文字驅動程式可以使用 FWPM_SERVICE_STOP_PENDING 通知,在篩選引擎停止之前執行任何清除。
圖說驅動程式必須先呼叫 FwpmBfeStateSubscribeChanges0,才能呼叫 FwpmBfeStateGet0 函式,以擷取篩選引擎的目前狀態。 呼叫 FwpmBfeStateSubscribeChanges0 傳回之後,圖說驅動程式可以隨時呼叫 FwpmBfeStateGet0。
圖說文字驅動程式必須先呼叫 FwpmBfeStateUnsubscribeChanges0 函式來取消註冊回呼函式,才能卸除圖說文字驅動程式。
FwpmBfeStateSubscribeChanges0 是 FwpmBfeStateSubscribeChanges 的特定版本。 如需詳細資訊,請參閱 糧食計劃署 Version-Independent 名稱和以特定版本的 Windows 為目標。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows Vista 開始提供。 |
目標平臺 | 普遍 |
標頭 | fwpmk.h (包括 Fwpmk.h) |
連結庫 | Fwpkclnt.lib |
IRQL | PASSIVE_LEVEL |