Программное обеспечение компьютерных сетей и информационных систем. Баканов В.М. - 56 стр.

UptoLike

Составители: 

- 56 -
#define WSA_NETEVENT (WM_USER+2)
rc = WSAAsyncSelect(srv_socket,
hWnd,
WSA_NETEVENT,
FD_READ | FD_CLOSE);
При необходимости выполнения асинхронной посылки данных следует
указать функции WSAAsyncSelect еще и параметр FD_WRITE.
При успешном выполнении функция WSAAsyncSelect возвращает
NULL, при ошибке - SOCKET_ERROR.
В зависимости от значения последнего параметра могут возникать раз-
ные коды ошибки, которые можно получить с помощью функции
WSAGetLastError. Следующие ошибки могут возникнуть при любом
значе-
нии этого параметрам
Код ошибки Описание
WSANOTINITIALISED
Перед использованием функции необходимо вызвать функ-
цию WSAStartup
WSAENETDOWN
Сбой в сети
WSAEINVAL Сокет не был подключен функцией bind
WSAEINPROGRESS Выполняется блокирующая функция интерфейса Windows
Sockets
Дополнительный код ошибки можно получить, проанализировав пара-
метр lParam при помощи макроса WSAGETSELECTERROR.
При использовании параметра FD_CONNECT возможно появление сле-
дующих ошибок
Код ошибки Описание
WSAEADDRINUSE
Описанный адрес уже используется
WSAEADDRNOTAVAIL
Указанный адрес недоступен
WSAEAFNOSUPPORT
Для данного сокета нельзя использовать указанное семей-
ство адресов
WSAECONNREFUSED
Попытка установления канала связи была отвергнута
WSAEDESTADDRREQ
Необходимо указать адрес получателя пакета
WSAEFAULT Неправильно указан параметр namelen
WSAEINVAL
Сокет уже подключен к адресу
WSAEICONN
Сокет уже подсоединен
WSAEMFILE
Больше нет дескрипторов
WSAENETUNREACH
Из данного узла и в данное время невозможно получить
доступ к сети
WSAENOBUFS
Нет места для размещения буфера
WSAENOTCONN
Сокет уже подключен
                                   - 56 -



#define WSA_NETEVENT (WM_USER+2)

rc = WSAAsyncSelect(srv_socket,
                    hWnd,
                    WSA_NETEVENT,
                    FD_READ | FD_CLOSE);

    При необходимости выполнения асинхронной посылки данных следует
указать функции WSAAsyncSelect еще и параметр FD_WRITE.
    При успешном выполнении функция WSAAsyncSelect возвращает
NULL, при ошибке - SOCKET_ERROR.
    В зависимости от значения последнего параметра могут возникать раз-
ные коды ошибки, которые можно получить с помощью функции
WSAGetLastError. Следующие ошибки могут возникнуть при любом значе-
нии этого параметрам

     Код ошибки                               Описание
 WSANOTINITIALISED     Перед использованием функции необходимо вызвать функ-
                       цию WSAStartup
 WSAENETDOWN           Сбой в сети
 WSAEINVAL             Сокет не был подключен функцией bind
 WSAEINPROGRESS        Выполняется блокирующая функция интерфейса Windows
                       Sockets

    Дополнительный код ошибки можно получить, проанализировав пара-
метр lParam при помощи макроса WSAGETSELECTERROR.
    При использовании параметра FD_CONNECT возможно появление сле-
дующих ошибок

     Код ошибки                               Описание
 WSAEADDRINUSE          Описанный адрес уже используется
 WSAEADDRNOTAVAIL       Указанный адрес недоступен
 WSAEAFNOSUPPORT        Для данного сокета нельзя использовать указанное семей-
                        ство адресов
 WSAECONNREFUSED        Попытка установления канала связи была отвергнута
 WSAEDESTADDRREQ        Необходимо указать адрес получателя пакета
 WSAEFAULT              Неправильно указан параметр namelen
 WSAEINVAL              Сокет уже подключен к адресу
 WSAEICONN              Сокет уже подсоединен
 WSAEMFILE              Больше нет дескрипторов
 WSAENETUNREACH         Из данного узла и в данное время невозможно получить
                        доступ к сети
 WSAENOBUFS             Нет места для размещения буфера
 WSAENOTCONN            Сокет уже подключен