LPWSPADDRESSTOSTRING 콜백 함수(ws2spi.h)

LPWSPAddressToString 함수는 sockaddr 구조체의 모든 구성 요소를 주소의 사람이 읽을 수 있는 숫자 문자열 표현으로 변환합니다. 이는 주로 표시 목적으로 사용됩니다.

구문

LPWSPADDRESSTOSTRING Lpwspaddresstostring;

INT Lpwspaddresstostring(
  [in]      LPSOCKADDR lpsaAddress,
  [in]      DWORD dwAddressLength,
  [in]      LPWSAPROTOCOL_INFOW lpProtocolInfo,
  [out]     LPWSTR lpszAddressString,
  [in, out] LPDWORD lpdwAddressStringLength,
  [out]     LPINT lpErrno
)
{...}

매개 변수

[in] lpsaAddress

문자열로 변환할 sockaddr 구조체에 대한 포인터입니다.

[in] dwAddressLength

sockaddr 주소의 길이(바이트)입니다.

[in] lpProtocolInfo

(필수) WSAProtocol_Info 변환을 수행할 공급자와 연결된 구조체입니다.

[out] lpszAddressString

사람이 읽을 수 있는 주소 문자열을 수신하는 버퍼입니다.

[in, out] lpdwAddressStringLength

AddressString 버퍼의 길이(바이트)입니다. 실제로 버퍼에 복사된 문자열의 길이를 반환합니다. 제공된 버퍼가 충분히 크지 않으면 함수가 WSAEFAULT 의 특정 오류와 함께 실패하고 이 매개 변수는 필요한 크기(바이트)로 업데이트됩니다.

[out] lpErrno

오류 코드에 대한 포인터입니다.

반환 값

오류가 발생하지 않으면 LPWSPAddressToString은 0을 반환합니다. 그렇지 않으면 SOCKET_ERROR 반환되고 lpErrno에서 특정 오류 코드를 사용할 수 있습니다.

오류 코드 의미
WSAEFAULT
지정한 AddressString 버퍼가 너무 작습니다. 더 큰 버퍼를 전달합니다.
WSAEINVAL
지정된 주소가 유효한 소켓 주소가 아니거나 해당 주소 패밀리가 공급자에서 지원되지 않거나 지정된 lpProtocolInfo 가 공급자가 지원하는 WSAProtocol_Info 구조를 참조하지 않았습니다.
 
 

설명

계층화된 서비스 공급자는 이 함수의 구현을 제공하지만 프로토콜 체인에서 다음 계층의 LPWSPAddressToString 을 호출하는 경우 이 함수의 클라이언트이기도 합니다. 프로토콜 체인의 계층을 통해 전파되므로 lpProtocolInfo 매개 변수에 몇 가지 특별한 고려 사항이 적용됩니다.

프로토콜 체인의 다음 계층이 다른 계층인 경우 다음 계층의 LPWSPAddressToString이 호출될 때 이 계층은 수정되지 않은 동일한 체인 정보를 사용하여 동일한 수정되지 않은 WSAProtocol_Info 구조를 참조하는 lpProtocolInfo 매개 변수를 다음 계층에 전달해야 합니다. 그러나 다음 계층이 기본 프로토콜(즉, 체인의 마지막 요소)인 경우 이 계층은 기본 공급자의 LPWSPAddressToString을 호출할 때 대체를 수행합니다. 이 경우 lpProtocolInfo 매개 변수에서 기본 공급자의 WSAPROTOCOL_INFO 구조를 참조해야 합니다. 이 정책의 중요한 이점 중 하나는 기본 서비스 공급자가 프로토콜 체인을 인식할 필요가 없다는 것입니다.

이 동일한 전파 정책은 LPWSPDuplicateSocket, WSPStartup, LPWSPSocket 또는 LPWSPStringToAddress와 같은 다른 함수의 계층화된 시퀀스를 통해 WSAProtocol_Info 구조를 전파 때 적용됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 ws2spi.h

추가 정보

WSAProtocol_Info

WSPDucplicateSocket

LPWSPSocket

WSPStartup

sockaddr