TCI_NOTIFY_HANDLER回调函数 (traffic.h)
流量控制使用 ClNotifyHandler 函数向客户端通知特定于流量控制的各种事件,包括删除流、更改筛选器参数或关闭接口。
ClNotifyHandler 回调函数应由使用流量控制服务的所有客户端公开。
语法
TCI_NOTIFY_HANDLER TciNotifyHandler;
void TciNotifyHandler(
[in] HANDLE ClRegCtx,
[in] HANDLE ClIfcCtx,
[in] ULONG Event,
[in] HANDLE SubCode,
[in] ULONG BufSize,
[in] PVOID Buffer
)
{...}
参数
[in] ClRegCtx
客户端注册上下文,由客户端通过客户端调用 TcRegisterClient 函数提供给流量控制。
[in] ClIfcCtx
客户端接口上下文,由客户端通过 客户端调用 TcOpenInterface 函数提供给流量控制。 请注意,在TC_NOTIFY_IFC_UP事件期间, ClIfcCtx 不可用,并将设置为 NULL。
[in] Event
描述通知事件。 有关通知事件的列表,请参阅“备注”部分。
[in] SubCode
用于进一步限定通知事件的句柄。 有关 Windows 编程问题的 64 位,请参阅下面的说明。
[in] BufSize
通知事件附带的缓冲区的大小(以字节为单位)。
[in] Buffer
包含与 Event 和 SubCode 关联的详细事件信息的缓冲区。
返回值
无
备注
通知事件可能要求流量控制客户端采取特定操作或做出适当的响应,例如,删除筛选器或枚举受影响接口的流。
下表描述了各种通知事件。
事件 | SubCode | 缓冲区内容 | 注解 |
---|---|---|---|
TC_NOTIFY_IFC_UP | 无 | 新接口的接口名称 | 即将推出新的流量控制接口,并指示地址列表。 |
TC_NOTIFY_IFC_CLOSE | 关闭原因 | 闭合接口的接口名称 | 指示系统正在关闭客户端打开的接口。 请注意,接口及其支持的流和筛选器在从通知处理程序返回时由系统关闭。 客户端不需要关闭接口、删除流或删除筛选器。 |
TC_NOTIFY_IFC_CHANGE | 无 | 新参数值 | 用于通过 TcQueryInterface 函数的 NotifyChange 参数通知已注册接口更改通知的客户端。 |
TC_NOTIFY_PARAM_CHANGED | 指向使用 TcQueryInterface 函数查询的流量控制参数 GUID 的指针。 | 新参数值 | 由于之前使用 NotifyChange 标志设置查询的参数发生更改,将通知此事件。 |
TC_NOTIFY_FLOW_CLOSE | ClFlowCtx | 指示客户端创建的流的系统关闭。 系统将删除所有关联的筛选器。 |
注意 使用 ClNotifyHandler 函数需要管理权限。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | traffic.h |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈