FwpsCalloutRegister0 函式 (fwpsk.h)

FwpsCalloutRegister0 函式會向篩選引擎註冊圖說文字。

注意FwpsCalloutRegister0 是 Windows Vista 和更新版本中使用的特定 FwpsCalloutRegister 版本。 如需詳細資訊 ,請參閱 Version-Independent 名稱和以特定 Windows 版本為目標 。 針對 Windows 8,可以使用 FwpsCalloutRegister2。 針對 Windows 7,FwpsCalloutRegister1 可供使用。
 

語法

NTSTATUS FwpsCalloutRegister0(
  [in, out]       void                *deviceObject,
  [in]            const FWPS_CALLOUT0 *callout,
  [out, optional] UINT32              *calloutId
);

參數

[in, out] deviceObject

先前由圖說文字驅動程式所建立之裝置物件的指標。 如需圖說文字驅動程式如何建立裝置對象的詳細資訊,請參閱 建立裝置物件

[in] callout

常數 FWPS_CALLOUT0 結構的指標,其中包含向篩選引擎註冊圖說文字所需的數據。

[out, optional] calloutId

UINT32 型別變數的指標,接收識別篩選引擎中圖說文字的運行時間標識碼。 從篩選引擎取消註冊圖說文字時,圖說文字驅動程式會將此標識碼傳遞至 FwpsCalloutUnregisterById0 函式。 如果圖說文字驅動程式正在篩選數據流,它也會將此標識符傳遞至 FwpsFlowAssociateContext0FwpsFlowRemoveContext0 函式。 如果圖說文字驅動程式將數據插入數據流中,它也會將此標識碼傳遞至 FwpsStreamInjectAsync0 函式 。 篩選引擎也會將此標識碼傳遞至圖說文字驅動程式 的 flowDeleteFn 圖說文字函式。 這個參數是選擇性的,而且可以是 NULL

傳回值

FwpsCalloutRegister0 函式會傳回下列其中一個 NTSTATUS 代碼。

傳回碼 Description
STATUS_SUCCESS
圖說文字已成功向篩選引擎註冊。
STATUS_FWP_ALREADY_EXISTS
圖說文字無法向篩選引擎註冊。 圖說文字已在篩選引擎中註冊,其標識符與圖說參數所指向之FWPS_CALLOUT0結構之 calloutKey 成員中指定的 GUID 相同。
其他狀態代碼
發生錯誤。

備註

圖說文字驅動程式會呼叫 FwpsCalloutRegister0 函式,向篩選引擎註冊圖說文字。 圖說文字驅動程式可以隨時向篩選引擎註冊圖說文字,即使篩選引擎目前未執行也一樣。

在圖說文字驅動程式向篩選引擎註冊圖說文字之前,可以加入篩選動作的圖說文字和篩選條件。 在此情況下,動作類型 為FWP_ACTION_CALLOUT_TERMINATINGFWP_ACTION_CALLOUT_UNKNOWN的 篩選會被視為 FWP_ACTION_BLOCK,而且會忽略動作類型 為 FWP_ACTION_CALLOUT_INSPECTION 的篩選條件,直到圖說文字向篩選引擎註冊為止。

圖說文字驅動程式會藉由呼叫 其中一個 ,從篩選引擎取消註冊圖說文字 FwpsCalloutUnregisterById0 函式或 FwpsCalloutUnregisterByKey0 函式。 除非先前向篩選引擎註冊的所有圖說文字都已成功取消註冊,否則無法卸除圖說文字驅動程式。

規格需求

需求
最低支援的用戶端 從 Windows Vista 開始提供。
目標平台 Universal
標頭 fwpsk.h (包含 Fwpsk.h)
程式庫 Fwpkclnt.lib
IRQL PASSIVE_LEVEL

另請參閱

建立裝置物件

FWPS_CALLOUT0

FwpsCalloutRegister1

FwpsCalloutRegister2

FwpsCalloutUnregisterById0

FwpsCalloutUnregisterByKey0

FwpsFlowAssociateContext0

FwpsFlowRemoveContext0

FwpsStreamInjectAsync0

IoCreateDevice

圖說文字的類型

flowDeleteFn