WSAGetServiceClassInfoA 함수(winsock2.h)

WSAGetServiceClassInfo 함수는 지정된 네임스페이스 공급자에서 지정된 서비스 클래스와 관련된 클래스 정보(스키마)를 검색합니다.

구문

INT WSAAPI WSAGetServiceClassInfoA(
  [in]      LPGUID                 lpProviderId,
  [in]      LPGUID                 lpServiceClassId,
  [in, out] LPDWORD                lpdwBufSize,
  [out]     LPWSASERVICECLASSINFOA lpServiceClassInfo
);

매개 변수

[in] lpProviderId

특정 네임스페이스 공급자를 식별하는 GUID에 대한 포인터입니다.

[in] lpServiceClassId

서비스 클래스를 식별하는 GUID에 대한 포인터입니다.

[in, out] lpdwBufSize

입력에서 lpServiceClassInfo 매개 변수가 가리키는 버퍼에 포함된 바이트 수입니다.

출력에서 함수가 실패하고 오류가 WSAEFAULT인 경우 이 매개 변수는 레코드를 검색하는 데 필요한 lpServiceClassInfo 를 가리키는 버퍼의 최소 크기(바이트)를 지정합니다.

[out] lpServiceClassInfo

지정된 서비스 클래스에 대해 표시된 네임스페이스 공급자의 서비스 클래스 정보를 포함하는 WSASERVICECLASSINFO 구조체에 대한 포인터입니다.

반환 값

WSAGetServiceClassInfo가 성공한 경우 반환 값은 0입니다. 그렇지 않으면 SOCKET_ERROR 값이 반환되고 WSAGetLastError를 호출하여 특정 오류 번호를 검색할 수 있습니다.

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

설명

WSAGetServiceClassInfo 함수는 네임스페이스 공급자에서 서비스 클래스 정보를 검색합니다. 특정 네임스페이스 공급자에서 검색된 서비스 클래스 정보는 서비스 클래스가 설치될 때 지정된 전체 클래스 정보 집합이 아닐 수 있습니다. 개별 네임스페이스 공급자는 지원하는 네임스페이스에 적용할 수 있는 서비스 클래스 정보만 보존해야 합니다. 자세한 내용은 서비스 클래스 데이터 구조 섹션을 참조하세요.

참고

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

요구 사항

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

추가 정보

서비스 클래스 데이터 구조

WSAInstallServiceClass

WSASERVICECLASSINFOW

WSAStartup

Winsock 함수

Winsock 참조