FwpsCalloutRegister2 函式 (fwpsk.h)

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

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

 

語法

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

參數

[in, out] deviceObject

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

[in] callout

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

[out, optional] calloutId

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

傳回值

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

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

備註

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

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

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

此函式基本上與舊版 FwpsCalloutRegister1相同。 唯一的差異在於圖說參數所指向的更新FWPS_CALLOUT2結構。

需求

   
最低支援的用戶端 從 Windows 8 開始提供。
目標平臺 環球
標頭 fwpsk.h (包含 Fwpsk.h)
程式庫 Fwpkclnt.lib
IRQL PASSIVE_LEVEL

另請參閱

建立裝置物件

FWPS_CALLOUT2

FwpsCalloutRegister0

FwpsCalloutRegister1

FwpsCalloutUnregisterById0

FwpsCalloutUnregisterByKey0

FwpsFlowAssociateCoNtext0

FwpsFlowRemoveCoNtext0

FwpsStreamInjectAsync0

IoCreateDevice

圖說文字的類型

flowDeleteFn