CAsyncSocket::Connect
调用该成员函数生成与未关联的流或数据进行套接字的连接。
BOOL Connect(
LPCTSTR lpszHostAddress,
UINT nHostPort
);
BOOL Connect(
const SOCKADDR* lpSockAddr,
int nSockAddrLen
);
参数
lpszHostAddress
此对象与套接字的网络地址:一个计算机名称(例如“ftp.microsoft.com”或一个虚线的数字(如“128.56.22.8”。nHostPort
标识套接字应用程序的端口。lpSockAddr
对包含连接的套接字地址的 SOCKADDR 结构的指针。nSockAddrLen
地址的长度。lpSockAddr 的以字节为单位)。
返回值
非零,如果函数运行成功;否则0和特定错误代码可以通过调用 GetLastError检索。 如果这指示 WSAEWOULDBLOCK错误代码,并且,如果您的应用程序使用可重写的回调,应用程序将收到 OnConnect 消息,则连接操作完成。 下面的错误适用于此成员函数:
WSANOTINITIALISED 的成功的 AfxSocketInit 必须在使用此API之前发生。
WSAENETDOWN Windows套接字实现检测网络子系统失败。
WSAEADDRINUSE 所指定的地址已被使用。
块Windows套接字的WSAEINPROGRESS A调用正在进行。
WSAEADDRNOTAVAIL 所指定的地址从本地计算机不可用。
在指定的系列的WSAEAFNOSUPPORT 地址不能对该套接字。
WSAECONNREFUSED 在尝试连接被拒绝。
WSAEDESTADDRREQ 一个需要目标地址。
WSAEFAULTnSockAddrLen 参数不正确。
WSAEINVAL 无效主机地址。
WSAEISCONN 套接字已连接。
WSAEMFILE 没有其他文件描述符不可用。
WSAENETUNREACH 网络无法从目前的宿为止。
WSAENOBUFS 没有缓冲区空间可用。 套接字无法连接。
WSAENOTSOCK 描述符不是套接字。
WSAETIMEDOUT 尝试连接超时,而不建立连接。
WSAEWOULDBLOCK 套接字标记为未占用,并连接无法立即完成。
备注
如果套接字是未绑定,唯一值赋给局部关联由系统,并且,套接字标记为绑定。 请注意,如果名称结构的地址字段是所有零,Connect 将返回零。 若要扩展的错误信息,调用 GetLastError 成员函数。
对于流套接字(类型 SOCK_STREAM),启动活动连接与外部宿主。 当套接字调用时成功完成,套接字准备好送信/受信的数据。
对于数据进行套接字(类型 SOCK_DGRAM),默认目标值设置,在后续 Send 将使用,并 Receive 调用。
要求
Header: afxsock.h