CAsyncSocket::Connect

BOOL Connect(LPCTSTR lpszHostAddress, UINT nHostPort);
BOOL Connect(const SOCKADDR* lpSockAddr, int nSockAddrLen );

返回值:
如果成功,则返回非零值,否则为0。通过调用GetLastError获取特定的错误代码。如果确定了WSAEWOULDBLOCK的错误代码,并且应用正在使用函数覆盖的调用,则当连接操作完成时,应用将接收OnConnect消息。
·WSANOTINIALISED成功的AfxSocketIint必须发生在使用此API之前。
·WSANNETDOWNWindows套接字工具测试出网络系统失败。
·WSAEADDRINUSE特定的地址已在使用。
·WSAEINPROGESS成块的Windows套接字正在进行中。
·WSAEADDRNOTAVAIL从本地机来的特定地址无效。
·WSAEAFNOSUPPORT特定体系中的地址不能用于此套接字。
·WSAECONNREFUSED连接的尝试被拒绝。
·WSAEDESTADDRREQ需要目的地址。
·WSAEFAULTnSockAddrLen参数不正确。
·WSAEINVAL无效的主机地址。
·WSAEISCONN套接字已连接。
·WSAEMFILE没有更多有效的描述符。
·WSAENETUNREACH此时网络不能从主机到达。
·WSAENOBUFS没有有效的缓冲空间。套接字不能被连接。
·WSAENOTSOCK描述符不是套接字。
·WSAETIMEDOUT在没有建立连接时,试图连接超时。
·WSAEWOULDBLOCK套接字被屏蔽为非成块并且连接不能马上完成。

参数:
lpszHostAddress与对象连接的套接字的网络地址:机器名,例如ftp.microsoft.com 或以句点分隔的数字,例如“128.56.22.8”
nHostPost定义套接字应用的端口。
lpSockAddr指向SOCKADDR结构的指针。SOCKADDR结构包含连接套接字的地址。
nSockAddrLen以字节计算的lpSockAddr中的地址长度。

说明:
调用此成员函数,建立与未连接流或数据报套接字的连接。如果套接字是未约束的,通过系统唯一的值将分配给本地联系并且套接字被屏蔽为约束。请注意,如果名称结构的地址域都为0,则Connect将返回零。为了获得扩展的更多的错误信息,请调用GetLastError成员函数。
对于流套接字(SOCK_STREAM类型),对外部主机初始化活动的连接。当成功完成套接字调用时,套接字已准备好接受发送/接受数据。
对于数据报套接字(SOCK_DGRAM类型),设置缺省的目的,它将用于顺序的Send和Receive调用。

请参阅:
CAsyncSocket::Accept, CAsyncSocket::Bind, CAsyncSocket::GetSockName, CAsyncSocket::Create, CAsyncSocket::AsyncSelect