unenableRouter 函数 (iphlpapi.h)
UnenableRouter 函数会减少跟踪启用 IPv4 转发的请求数的引用计数。 当此引用计数达到零时, UnenableRouter 将关闭本地计算机上的 IPv4 转发。
语法
IPHLPAPI_DLL_LINKAGE DWORD UnenableRouter(
OVERLAPPED *pOverlapped,
[out, optional] LPDWORD lpdwEnableCount
);
参数
pOverlapped
指向 OVERLAPPED 结构的指针。 此结构应与调用 EnableRouter 函数中使用的结构相同。
[out, optional] lpdwEnableCount
指向 DWORD 变量的可选指针。 此变量接收剩余的引用数。
返回值
如果函数成功,则返回值NO_ERROR。
如果函数失败,请使用 FormatMessage 获取返回错误的消息字符串。
注解
UnenableRouter 函数特定于 IPv4 转发。 进程对 UnenableRouter 进行的每个调用都必须对应于同一进程对 EnableRouter 的先前调用。 系统在对 UnenableRouter 进行无关调用时返回错误。 因此,给定进程无法减少跟踪为另一个进程启用 IPv4 转发的请求数的引用计数。 此外,如果给定进程启用了 IPv4 转发,则其他进程无法禁用它。
无法准确确定跟踪启用 IPv4 转发的请求数的引用计数,因为可能存在其他未完成 的 EnableRouter 请求。 因此,为 lpdwEnableCount 参数返回的值始终是等于 ULONG_MAX/2 的大计数。
如果调用 EnableRouter 的进程在未调用 UnenableRouter 的情况下终止,则系统会减少跟踪请求以启用 IPv4 转发的引用计数,就像进程调用 了 UnenableRouter 一样。
调用 UnenableRouter 后,使用 CloseHandle 调用关闭 OVERLAPPED 结构中事件对象的句柄。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | iphlpapi.h |
Library | Iphlpapi.lib |
DLL | Iphlpapi.dll |