다음을 통해 공유


WSAGetServiceClassNameByClassIdW 함수(winsock2.h)

WSAGetServiceClassNameByClassId 함수는 지정된 형식과 연결된 서비스의 이름을 검색합니다. 이 이름은 FTP 또는 SNA와 같은 일반 서비스 이름이며 해당 서비스의 특정 instance 이름이 아닙니다.

구문

INT WSAAPI WSAGetServiceClassNameByClassIdW(
  [in]      LPGUID  lpServiceClassId,
  [out]     LPWSTR  lpszServiceClassName,
  [in, out] LPDWORD lpdwBufferLength
);

매개 변수

[in] lpServiceClassId

서비스 클래스의 GUID에 대한 포인터입니다.

[out] lpszServiceClassName

서비스 이름에 대한 포인터입니다.

[in, out] lpdwBufferLength

입력 시 lpszServiceClassName에서 반환된 버퍼의 길이(문자)입니다. 출력에서 lpszServiceClassName에 복사된 서비스 이름의 길이(문자)입니다.

반환 값

WSAGetServiceClassNameByClassId 함수는 성공하면 0 값을 반환합니다. 그렇지 않으면 SOCKET_ERROR 값이 반환되고 WSAGetLastError를 호출하여 특정 오류 번호를 검색할 수 있습니다.

오류 코드 의미
WSA_INVALID_PARAMETER
지정된 lpServiceClassId 매개 변수가 잘못되었습니다.
WSA_NOT_ENOUGH_MEMORY
작업을 수행할 메모리가 부족했습니다.
WSAEACCES
호출 루틴에는 정보에 액세스할 수 있는 충분한 권한이 없습니다.
WSAEFAULT
lpszServiceClassName이 가리키는 지정된 버퍼가 너무 작습니다. 더 큰 버퍼를 전달합니다.
WSAENOBUFS
사용할 수 있는 버퍼 공간이 없습니다.
WSAEOPNOTSUPP
이 작업은 참조되는 개체의 형식에 대해 지원되지 않습니다. 이 오류는 서비스 클래스 정보 가져오기를 지원하지 않는 일부 네임스페이스 공급자에서 반환됩니다.
WSANO_DATA
lpServiceClassId는 유효하지만 요청된 형식의 데이터를 찾을 수 없습니다.
WSANOTINITIALISED
WS2_32.DLL 초기화되지 않았습니다. 애플리케이션은 Windows 소켓 함수를 호출하기 전에 먼저 WSAStartup 을 호출해야 합니다.

설명

참고

winsock2.h 헤더는 WSAGetServiceClassNameByClassId를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 winsock2.h
라이브러리 Ws2_32.lib
DLL Ws2_32.dll

추가 정보

WSAStartup

Winsock 함수

Winsock 참조