FwpsFlowAssociateContext0 函式 (fwpsk.h)

FwpsFlowAssociateContext0 函式會將圖說文字驅動程式定義的內容與數據流產生關聯。

注意FwpsFlowAssociateContext0 是特定版本的 FwpsFlowAssociateContext。 如需詳細資訊 ,請參閱 Version-Independent 名稱和以特定 Windows 版本為目標
 

語法

NTSTATUS FwpsFlowAssociateContext0(
  [in] UINT64 flowId,
  [in] UINT16 layerId,
  [in] UINT32 calloutId,
  [in] UINT64 flowContext
);

參數

[in] flowId

運行時間標識碼,指定要與內容產生關聯的數據流。 數據流的運行時間標識碼會透過傳遞至圖說文字驅動程式 之classifyFn 圖說文字函數的FWPS_METADATA_FIELD_FLOW_HANDLE元數據值提供給圖說文字驅動程式。

[in] layerId

與內容相關聯之篩選層的運行時間標識符。 內容只會與指定的篩選層相關聯。 如需詳細資訊,請參閱 運行時間篩選層標識碼

[in] calloutId

篩選引擎中圖說文字的運行時間標識碼。 呼叫 FwpsCalloutRegister0FwpsCalloutRegister1 或 FwpsCalloutRegister2 函式以向篩選引擎註冊圖說文字時,會傳回此標識符。

[in] flowContext

要與數據流相關聯的圖說文字驅動程式定義內容。 此參數不得為零。 此內容對篩選引擎而言不透明。

傳回值

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

傳回碼 Description
STATUS_SUCCESS
內容已成功與數據流相關聯。
STATUS_INVALID PARAMETER
flowContext 參數為 NULL,或 calloutID 參數所指定的圖說文字未登錄 flowDeleteFn
STATUS_OBJECT_NAME_EXISTS
內容已經與數據流相關聯。 在此情況下,圖說文字驅動程式應該先呼叫 FwpsFlowRemoveContext0 函式來移除現有的內容,然後再次呼叫 FwpsFlowAssociateContext0 函式,讓新內容與數據流產生關聯。
其他狀態代碼
發生錯誤。

備註

篩選數據流時,圖說文字驅動程式可以呼叫 FwpsFlowAssociateContext0 函式,將內容與數據流產生關聯。 然後,它可以使用此內容,針對該數據流,將篩選引擎呼叫之間的任何驅動程式特定數據或狀態資訊保留至圖說文字的 classifyFn 圖說文字函式。

在已登錄 flowDeleteFn 圖說文字函式的 layerId 參數所識別的圖層上,篩選引擎中必須有圖說文字。 否則, FwpsFlowAssociateContext0 函式的呼叫將會傳回STATUS_INVALID_PARAMETER。 篩選引擎會在流程終止時呼叫 flowDeleteFn 圖說文字函式,讓圖說文字驅動程式可以清除與流程相關聯的內容。

您可以針對相同的流程多次呼叫 FwpsFlowAssociateContext0 。 在每個通話中,您必須指定不同的圖說文字和不同的內容,每個新增的圖說文字各一個內容。

FwpsFlowAssociateContext0 函式會將單一內容與單一新增的圖說文字產生關聯。

您可以將多個內容與流程產生關聯。 不過,每個內容都必須與不同的圖說文字相關聯。 新的圖說文字可以位於與前一個或不同圖層相同的圖層。

如需詳細資訊和範例程式代碼,請參閱將 內容與數據流和Windows 篩選平臺範例產生關聯。

規格需求

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

另請參閱

將內容與數據流產生關聯

FwpsCalloutRegister0

FwpsCalloutRegister1

FwpsCalloutRegister2

FwpsFlowRemoveContext0

Windows 篩選平臺範例

classifyFn

flowDeleteFn