FwpmNetEventSubscribe2 函数 (fwpmu.h)

FwpmNetEventSubscribe2 函数用于请求传递有关特定网络事件的通知。

注意FwpmNetEventSubscribe2 是Windows 10版本 1607 及更高版本中使用的 FwpmNetEventSubscribe 的特定实现。 有关详细信息 ,请参阅 WFP Version-Independent名称和面向 Windows 的特定版本 。 对于Windows 8,可以使用 FwpmNetEventSubscribe1。 对于 Windows 7, 可以使用 FwpmNetEventSubscribe0
 

语法

DWORD FwpmNetEventSubscribe2(
  [in]           HANDLE                             engineHandle,
  [in]           const FWPM_NET_EVENT_SUBSCRIPTION0 *subscription,
  [in]           FWPM_NET_EVENT_CALLBACK2           callback,
  [in, optional] void                               *context,
  [out]          HANDLE                             *eventsHandle
);

参数

[in] engineHandle

筛选器引擎的打开会话的句柄。 调用 FwpmEngineOpen0 以打开与筛选器引擎的会话。

[in] subscription

描述将传递哪些通知 的FWPM_NET_EVENT_SUBSCRIPTION0 结构。

[in] callback

指向 类型为 FWPM_NET_EVENT_CALLBACK2 的函数的指针,该函数将在通知准备好传递时调用该函数。

[in, optional] context

可选上下文指针。 此指针连同事件的详细信息一起传递给 回调 函数。

[out] eventsHandle

新创建的订阅的句柄。 调用 FwpmNetEventUnsubscribe0 以在不再需要订阅时关闭此句柄。

返回值

返回代码/值 说明
ERROR_SUCCESS
0
已成功创建订阅。
FWP_E_* 错误代码
0x80320001 — 0x80320039
Windows 筛选平台 (WFP) 特定错误。 有关详细信息 ,请参阅 WFP 错误代码
RPC_* 错误代码
0x80010001 — 0x80010122
无法与远程或本地防火墙引擎通信。

注解

不能从事务内部调用此函数。 它将失败并 出现FWP_E_TXN_IN_PROGRESS。 有关事务的详细信息,请参阅 对象管理

调用方需要 FWPM_ACTRL_SUBSCRIBE 访问 net 事件的容器。

要求

   
最低受支持的客户端 Windows 10版本 1607 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows
标头 fwpmu.h
Library Fwpuclnt.lib
DLL Fwpuclnt.dll

请参阅

FWPM_NET_EVENT_CALLBACK2

FWPM_NET_EVENT_SUBSCRIPTION0

FwpmNetEventUnsubscribe0