FwpsCalloutUnregisterById0 関数 (fwpsk.h)

FwpsCalloutUnregisterById0 関数は、フィルター エンジンからの吹き出しの登録を解除します。

FwpsCalloutUnregisterById0 は、 FwpsCalloutUnregisterById の特定のバージョンです。 詳細については、「 WFP Version-Independent 名と特定のバージョンの Windows を対象 とする」を参照してください。
 

構文

NTSTATUS FwpsCalloutUnregisterById0(
  [in] const UINT32 calloutId
);

パラメーター

[in] calloutId

フィルター エンジンから登録解除されている吹き出しのランタイム識別子。 これは、吹き出しドライバーが FwpsCalloutRegister0 または FwpsCalloutRegister1 関数を呼び出して吹き出しをフィルター エンジンに登録したときに返されたランタイム識別子である必要があります。

戻り値

FwpsCalloutUnregisterById0 関数は、次のいずれかの NTSTATUS コードを返します。

リターン コード 説明
STATUS_SUCCESS
吹き出しがフィルター エンジンから正常に登録解除されました。
STATUS_DEVICE_BUSY
未処理のコンテキストがデータ フローに関連付けられている吹き出しによって処理されるデータ フローが 1 つ以上あります。 コールアウト ドライバーは、関連するコンテキストを削除するために、これらのデータ フローごとに FwpsFlowRemoveContext0 関数を呼び出す必要があります。 これらの各データ フローからコンテキストが正常に削除された後、引き出し線ドライバーは、フィルター エンジンからの吹き出しの登録解除を完了するために 、FwpsCalloutUnregisterById0 関数をもう一度呼び出す必要があります。
STATUS_FWP_CALLOUT_NOT_FOUND
calloutId パラメーターで指定された実行時識別子と一致する吹 き出し がフィルター エンジンに登録されていません。
STATUS_FWP_IN_USE
コールアウトは、既に別のスレッドで登録または登録解除中です。
その他の状態コード
エラーが発生しました。

解説

コールアウト ドライバーは 、FwpsCalloutUnregisterById0 関数を呼び出して、フィルター エンジンからの吹き出しの登録を解除します。このとき、ランタイム識別子を使用して、登録解除する吹き出しを識別します。 フィルター エンジンにフィルターのアクションの吹き出しを指定するフィルターがある場合でも、この関数は成功します。 この状況では、FWP_ACTION_CALLOUT_TERMINATINGまたはFWP_ACTION_CALLOUT_UNKNOWNのアクションの種類を持つフィルターはFWP_ACTION_BLOCKとして扱われ、吹き出しがフィルター エンジンから登録解除された後、アクションの種類のFWP_ACTION_CALLOUT_INSPECTIONを持つフィルターは無視されます。

以前にフィルター エンジンに登録されていたすべての吹き出しが正常に登録解除されるまで、引き出しドライバーをアンロードすることはできません。

要件

要件
サポートされている最小のクライアント Windows Vista 以降で使用できます。
対象プラットフォーム ユニバーサル
Header fwpsk.h (Fwpsk.h を含む)
Library Fwpkclnt.lib
IRQL PASSIVE_LEVEL

こちらもご覧ください

FwpsCalloutRegister0

FwpsCalloutRegister1

FwpsCalloutUnregisterByKey0

FwpsFlowRemoveContext0

コールアウトの種類