RtmDeleteRoute 函数
[此 API 已被 路由表管理器版本 2 API 取代,在 Windows Server 2003 之后不可用。 应用程序应使用路由表管理器版本 2 API。]
RtmDeleteRoute 函数删除路由条目。
语法
DWORD RtmDeleteRoute(
_In_ HANDLE ClientHandle,
_In_ PVOID Route,
_Out_ DWORD Flags,
_Out_ PVOID CurBestRoute
);
参数
-
ClientHandle [in]
-
标识客户端的句柄,因此标识已添加或更新路由的路由协议。 通过调用 RtmRegisterClient 获取此句柄。
-
路由 [in]
-
指向特定于协议系列的结构的指针,该结构指定新的或更新的路由。 路由表管理器使用以下字段来更新路由表:
值 含义 - RR_Network
指定目标网络编号。 - RR_InterfaceID
指定用于接收路由的接口的索引。 - RR_NextHopAddress
指定下一跃点路由器的网络地址。 -
标志 [out]
-
指向一组标志的指针,这些标志指示更改消息的类型以及所提供缓冲区中放置的信息。 此参数是以下值之一。
Flags 含义 - RTM_NO_CHANGE
删除路由不会影响到任何目标网络的最佳路由。 换句话说,另一个条目表示指向同一目标网络的路由,其指标较低。 - RTM_ROUTE_DELETED
已删除的路由是特定目标网络唯一可用的路由。 - RTM_ROUTE_CHANGED
删除此路由后,另一个路由成为特定目标网络的最佳路由。 CurBestRoute 指向新的最佳路由的信息。 -
CurBestRoute [out]
-
指向接收当前最佳路由信息的 结构的指针(如果有)。 结构的类型特定于协议系列,例如 IP 或 IPX。
此参数是可选的。 如果调用方为此参数指定 NULL ,则不会返回当前最佳路由信息。
返回值
如果函数成功,则返回值 NO_ERROR。
如果函数失败,则返回值为以下错误代码之一。
值 | 说明 |
---|---|
|
客户端句柄参数不是有效的句柄。 |
|
Route 参数指向的 路由 结构包含成员值。 |
|
路由表中没有与指定路由的参数匹配的条目。 |
|
资源不足,无法执行该操作。 |
备注
如果目标网络的最佳路由因删除而发生更改,则函数将生成路由更改消息。 但是,路由更改消息不会发送到进行此调用的客户端。 相反,此函数会将相关信息直接返回给该客户端。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
无受支持的版本 |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
终止服务器支持 |
Windows Server 2003 |
标头 |
|
库 |
|
DLL |
|
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈