GetBestInterfaceEx 함수(iphlpapi.h)
GetBestInterfaceEx 함수는 지정된 IPv4 또는 IPv6 주소에 가장 적합한 경로가 있는 인터페이스의 인덱스를 검색합니다.
구문
IPHLPAPI_DLL_LINKAGE DWORD GetBestInterfaceEx(
[in] sockaddr *pDestAddr,
[out] PDWORD pdwBestIfIndex
);
매개 변수
[in] pDestAddr
sockaddr 구조체의 형태로 최상의 경로를 사용하여 인터페이스를 검색할 대상 IPv6 또는 IPv4 주소입니다.
[out] pdwBestIfIndex
pDestAddr로 지정된 IPv6 또는 IPv4 주소에 가장 적합한 경로가 있는 인터페이스의 인덱스 포인터입니다.
반환 값
함수가 성공하면 반환 값이 NO_ERROR.
함수가 실패하면 반환 값은 다음 오류 코드 중 하나입니다.
반환 코드 | 설명 |
---|---|
|
작업을 완료할 수 없습니다. |
|
잘못된 매개 변수가 함수에 전달되었습니다. 이 오류는 nULL 포인터가 pdwBestIfIndex 매개 변수에 전달되거나 pDestAddr 또는 pdwBestIfIndex 매개 변수가 액세스할 수 없는 메모리를 가리키는 경우 반환됩니다. pdwBestIfIndex 매개 변수가 쓸 수 없는 메모리를 가리키는 경우에도 이 오류가 반환될 수 있습니다. |
|
요청이 지원되지 않습니다. 이 오류는 로컬 컴퓨터에 IPv4 스택이 없고 pDestAddr 매개 변수에 IPv4 주소가 지정되었거나 로컬 컴퓨터에 IPv6 스택이 없고 iPv6 주소가 pDestAddr 매개 변수에 지정된 경우 반환됩니다. |
|
FormatMessage 함수를 사용하여 반환된 오류에 대한 메시지 문자열을 가져옵니다. |
설명
GetBestInterfaceEx 함수는 IPv4 또는 IPv6 주소와 함께 사용할 수 있다는 점에서 GetBestInterface 함수와 다릅니다.
pDestAddr 매개 변수가 가리키는 sockaddr 구조체의 Family 멤버는 AF_INET 또는 AF_INET6 값 중 하나로 설정해야 합니다.
Windows Vista 이상에서는 pdwBestIfIndex 매개 변수가 IP 도우미에 의해 내부적으로 NET_IFINDEX 데이터 형식에 대한 포인터로 처리됩니다.
요구 사항
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | iphlpapi.h |
라이브러리 | Iphlpapi.lib |
DLL | Iphlpapi.dll |