Функция getprotobyname (winsock.h)
Функция getprotobyname извлекает сведения о протоколе, соответствующие имени протокола.
Синтаксис
protoent * getprotobyname(
[in] const char *name
);
Параметры
[in] name
Указатель на имя протокола, завершаемого значением NULL.
Возвращаемое значение
Если ошибки не возникает, getprotobyname возвращает указатель на прототип. В противном случае возвращается пустой указатель, и конкретный номер ошибки можно получить, вызвав WSAGetLastError.
Код ошибки | Значение |
---|---|
Перед использованием этой функции должен быть выполнен успешный вызов WSAStartup . | |
Произошел сбой сетевой подсистемы. | |
Достоверный протокол ответа не найден. | |
Неавторизированный протокол не найден или сбой сервера. | |
Неустранимые ошибки, база данных протоколов недоступна. | |
Допустимое имя, нет записи данных запрошенного типа. | |
Выполняется блокирующий вызов Windows Sockets 1.1 или поставщик услуг по-прежнему обрабатывает функцию обратного вызова. | |
Параметр name не является допустимой частью адресного пространства пользователя. | |
Блокирующий вызов сокета Windows 1.1 был отменен через WSACancelBlockingCall. |
Комментарии
Функция getprotobyname возвращает указатель на структуру протоентов , содержащую имена и номера протокола, соответствующие протоколу, указанному в параметре name . Все строки заканчиваются null. Структура прототипов выделяется библиотекой Сокетов Windows. Приложение никогда не должно пытаться изменить эту структуру или освободить какие-либо из ее компонентов. Кроме того, как и в случае с hostent, на поток выделяется только одна копия этой структуры, поэтому приложение должно скопировать все необходимые сведения перед выполнением других вызовов функций Сокетов Windows.
Windows Phone 8. Эта функция поддерживается для приложений Магазина Windows Phone Windows Phone 8 и более поздних версий.
Windows 8.1 и Windows Server 2012 R2. Эта функция поддерживается для приложений Магазина Windows в Windows 8.1, Windows Server 2012 R2 и более поздних версий.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8.1, Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2003 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | winsock.h (включая Winsock2.h) |
Библиотека | Ws2_32.lib |
DLL | Ws2_32.dll |