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

另请参阅

CloseHandle

EnableRouter

IP 帮助程序函数参考

IP 帮助程序起始页

OVERLAPPED