[이 API는 라우팅 테이블 관리자 버전 2 API로 대체되었으며 Windows Server 2003 이상에서는 사용할 수 없습니다. 애플리케이션은 라우팅 테이블 관리자 버전 2 API를 사용해야 합니다.]
RtmRegisterClient 함수는 지정된 프로토콜의 처리기로 클라이언트를 등록합니다. 클라이언트에 대한 경로 변경 알림 메커니즘을 설정하고 프로토콜 옵션을 설정합니다.
구문
HANDLE RtmRegisterClient(
_In_ DWORD ProtocolFamily,
_In_ DWORD RoutingProtocol,
_In_ HANDLE ChangeEvent,
_In_ DWORD Flags
);
매개 변수
-
ProtocolFamily [in]
-
등록할 라우팅 프로토콜의 프로토콜 패밀리를 지정합니다.
-
RoutingProtocol [in]
-
라우터 관리자에 등록할 때 사용한 것과 동일한 라우팅 프로토콜 식별자를 지정합니다. RegisterProtocol을 참조하세요.
-
ChangeEvent [in]
-
테이블의 네트워크에 대한 최상의 경로가 변경되었음을 지정합니다. 라우팅 테이블 관리자는 테이블의 모든 네트워크에 대한 최상의 경로를 변경한 후 이 이벤트에 신호를 보냅니다. 경로 변경 알림에 대한 자세한 내용은 RtmDequeueRouteChangeMessage 를 참조하세요.
이 매개 변수는 선택 사항입니다. 호출자가 이 매개 변수에 대해 NULL을 지정하는 경우 라우팅 테이블 관리자는 최상의 경로 상태 변경 내용을 클라이언트에 알리지 않습니다.
-
Flags [in]
-
라우팅 프로토콜의 특수 처리에 대한 기타 옵션을 지정합니다. 현재 다음 값이 지원됩니다.
플래그 의미 - RTM_PROTOCOL_SINGLE_ROUTE
라우팅 테이블 관리자는 라우팅 프로토콜에 대해 대상 네트워크당 하나의 경로만 유지합니다. 즉, 라우팅 테이블 관리자는 새 네트워크 번호를 추가하는 대신 동일한 대상 네트워크 번호를 가진 경로 항목을 대체합니다.
반환 값
반환이 성공적이면 라우팅 테이블 관리자에 대한 후속 호출에서 클라이언트를 식별하는 HANDLE 값입니다.
NULL 핸들은 라우팅 테이블 관리자가 클라이언트를 등록할 수 없음을 나타냅니다. GetLastError를 호출하여 실패 이유를 가져옵니다.
| 값 | 설명 |
|---|---|
|
다른 클라이언트가 지정된 프로토콜을 처리하기 위해 이미 등록되었습니다. |
|
지정된 프로토콜 패밀리가 지원되지 않거나 Flags 매개 변수가 잘못되었습니다. |
|
작업을 수행할 리소스가 부족합니다. |
|
클라이언트에 대한 데이터 구조를 할당할 메모리가 부족합니다. |
요구 사항
| 요구 사항 | 값 |
|---|---|
| 지원되는 최소 클라이언트 |
지원되는 버전 없음 |
| 지원되는 최소 서버 |
Windows 2000 Server[데스크톱 앱만] |
| 서버 지원 종료 |
Windows Server 2003 |
| 헤더 |
|
| 라이브러리 |
|
| DLL |
|