Функция WSCEnumNameSpaceProviders32 (ws2spi.h)
Функция WSCEnumNameSpaceProviders32 возвращает сведения о доступных 32-разрядных поставщиках пространств имен.
Синтаксис
INT WSAAPI WSCEnumNameSpaceProviders32(
[in, out] LPDWORD lpdwBufferLength,
[out] LPWSANAMESPACE_INFOW lpnspBuffer
);
Параметры
[in, out] lpdwBufferLength
При входе количество байтов, содержащихся в буфере, на который указывает lpnspBuffer. В выходных данных (если функция завершается сбоем и ошибка WSAEFAULT) минимальное количество байтов, выделяемых для буфера lpnspBuffer , чтобы позволить ему получить все запрошенные сведения. Буфера, передаваемого в WSCEnumNameSpaceProviders32 , должно быть достаточно для хранения всех сведений о пространстве имен.
[out] lpnspBuffer
Буфер, заполненный WSANAMESPACE_INFOW структурами. Возвращаемые структуры расположены последовательно в начале буфера. Сведения переменной величины, на которые ссылаются указатели в структурах, указывают на расположения в буфере, расположенные между концом структур фиксированного размера и концом буфера. Число заполненных структур — это возвращаемое значение WSCEnumNameSpaceProviders32.
Возвращаемое значение
Функция WSCEnumNameSpaceProviders32 возвращает количество WSANAMESPACE_INFOW структур, скопированных в lpnspBuffer. В противном случае возвращается значение SOCKET_ERROR, а определенный номер ошибки можно получить, вызвав WSAGetLastError.
Код ошибки | Значение |
---|---|
Параметр lpnspBuffer был указателем **NULL** или длина буфера lpdwBufferLength была слишком мала для получения всех соответствующих структур WSANAMESPACE_INFOW и связанных сведений. При возврате этой ошибки необходимая длина буфера возвращается в параметре lpdwBufferLength . | |
WS2_32.DLL не инициализирована. Приложение должно сначала вызвать WSAStartup , прежде чем вызывать функции Сокетов Windows. | |
Недостаточно памяти для выполнения операции. |
Комментарии
WSCEnumNameSpaceProviders32 — это строго 32-разрядная версия WSAEnumNameSpaceProviders. На 64-разрядном компьютере все вызовы, не относящиеся к 32-разрядным (например, все функции, которые не заканчиваются на "32"), работают в собственном 64-разрядном каталоге. Процессы, выполняемые на 64-разрядном компьютере, должны использовать определенные вызовы 32-разрядных функций для работы с строго 32-разрядным каталогом и сохранения совместимости. Определения и семантика конкретных 32-разрядных вызовов совпадают с собственными аналогами.
32-разрядная функция SPI эквивалентна собственной функции API (WSAEnumNameSpaceProviders), так как отсутствует концепция "скрытого" поставщика пространства имен.
Функция WSCEnumNameSpaceProviders32 является функцией только в Юникоде и возвращает WSANAMESPACE_INFOEXW структуры.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista, Windows XP Professional x64 Edition [только классические приложения] |
Минимальная версия сервера | Windows Server 2008, Windows Server 2003 x64 Edition [только классические приложения] |
Целевая платформа | Windows |
Header | ws2spi.h |
Библиотека | Ws2_32.lib |
DLL | Ws2_32.dll |