Функция 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, содержащую сведения о классе службы из указанного поставщика пространства имен для указанного класса службы.
Возвращаемое значение
Возвращаемое значение равно нулю, если
Код ошибки | Значение |
---|---|
Для выполнения операции недостаточно памяти. | |
Подпрограмма вызова не имеет достаточных привилегий для доступа к информации. | |
Буфер, на который указывает параметр lpServiceClassInfo, слишком мал, чтобы содержать WSASERVICECLASSINFOW. Приложению необходимо передать больший буфер. | |
Указанный идентификатор класса службы или идентификатор поставщика пространства имен недопустим. Эта ошибка возвращается, если lpProviderId, lpServiceClassId, lpdwBufSizeили параметры lpServiceClassInfoNULL. | |
Операция не поддерживается для типа объекта, на который ссылается ссылка. Эта ошибка возвращается некоторыми поставщиками пространств имен, которые не поддерживают получение сведений о классе службы. | |
Запрошенное имя допустимо, но данные запрошенного типа не найдены. | |
WS2_32.DLL не инициализирована. Приложение должно сначала вызвать WSAStartup перед вызовом функций сокетов Windows. | |
Указанный класс не найден. |
Замечания
Функция WSAGetServiceClassInfo извлекает сведения о классе службы из поставщика пространства имен. Сведения о классе служб, полученные от определенного поставщика пространства имен, могут не быть полным набором сведений о классе, указанных при установке класса службы. Отдельные поставщики пространств имен требуются только для хранения сведений о классе службы, применимых к пространствам имен, которые они поддерживают. Дополнительные сведения см. в разделе Структуры данных класса служб.
Заметка
Заголовок winsock2.h определяет WSAGetServiceClassInfo как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [классические приложения | Приложения UWP] |
минимальный поддерживаемый сервер | Windows 2000 Server [классические приложения | Приложения UWP] |
целевая платформа | Виндоус |
заголовка | winsock2.h |
библиотеки |
Ws2_32.lib |
DLL | Ws2_32.dll |
См. также
структуры данных класса службы
Справочник