Re: CAsyncSocket::Connect
От: Авдеев Дмитрий Дмитриевич  
Дата: 01.08.01 10:51
Оценка:
Здравствуйте antony, вы писали:

A>Получаю ошибку — WSAEWOULDBLOCK The socket is marked as nonblocking and the connection cannot be completed immediately.


A>Понятно всё кроме того где я могу изменить тип сокета с nonblocking. Подозреваю, что в CAsyncSocket::SetSockOpt и даже может быть это связано с этим флагом — SO_TYPE int Type of the socket , но дальнейшего описания я не нашёл.


A>Подскажите.



Дело а том, что соединение не происходит мнгновенно, а так как вы используете CAsyncSocket, что подразумевает асинхронные операции с сокетами, тойсть возврат из функции происходит даже если вы еще не соединились. Соответственно и получаете ошибку. Для того, чтобы отловить момент, когда уже можно отравлять и принимать, нужно переопределить в производном классе либо OnSend, либо OnConnect.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.