CAsyncSocket::Create
在构造套接字对象之后创建 windows 套接字并将其附加 创建 调用成员函数。
BOOL Create(
UINT nSocketPort = 0,
int nSocketType = SOCK_STREAM,
long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE,
LPCTSTR lpszSocketAddress = NULL
);
参数
nSocketPort
已知的端口将使用的套接字或 0,如果您希望 Windows 套接字选择端口。nSocketType
SOCK_STREAM 或 SOCK_DGRAM。lEvent
指定网络活动的组合应用程序感兴趣的位掩码。FD_READ 希望接收准备的通知阅读。
FD_WRITE 希望接收准备的通知编写的。
FD_OOB 希望接收带外数据到达的通知。
FD_ACCEPT 希望接收传入连接的通知。
FD_CONNECT 希望接收已连接的通知。
FD_CLOSE 希望接收套接字关闭的通知。
lpszSockAddress
对包含连接的套接字的网络地址的字符串的指针,一个虚线的数字 (如“128.56.22.8”。通过此参数的 空 字符串指示 CAsyncSocket 实例都应侦听在任何网络接口的客户端事件。
返回值
非零,如果函数运行成功;否则 0 和特定错误代码可以通过调用 GetLastError检索。 下面的错误适用于此成员函数:
WSANOTINITIALISED 的成功的 AfxSocketInit 必须在使用此 API 之前发生。
WSAENETDOWN Windows 套接字实现检测网络子系统失败。
WSAEAFNOSUPPORT 指定的地址族不受支持。
块 Windows 套接字操作的WSAEINPROGRESS 的进度中。
WSAEMFILE 没有其他文件描述符不可用。
WSAENOBUFS 不缓冲区域空间可用。 套接字无法创建。
WSAEPROTONOSUPPORT 该指定端口不受支持。
WSAEPROTOTYPE 该指定端口为此套接字的错误类型。
WSAESOCKTNOSUPPORT 指定的套接字类型在该地址族不受支持。
备注
创建 调用 存储,并且,如果成功,则调用 绑定 绑定套接字到指定的地址。 套接字以下类型支持:
SOCK_STREAM 的排序提供,可靠,全双工,基于连接的字节流。 对于 internet 地址族使用传输控制协议 (TCP)。
SOCK_DGRAM 支持数据图中,是固定 (通常较小的) 最大长度的非连接,不可靠的数据包。 对于 internet 地址族使用用户数据协议 (UDP)。
备注
接受 成员函数采用对新,空 CSocket 对象作为其参数。在调用 接受之前,必须构建此对象。记住,如果此套接字对象超出范围,连接将关闭。不要调用此新套接字对象的 创建。
重要
创建 是线程安全的 not。如果调用它在既可以由不同的线程同时调用的一种多线程环境中,请务必保护每个调用与 mutex 或其他同步锁。
有关流和数据进行套接字的更多信息,请参见位于 Windows 套接字:背景 和 Windows 套接字:端口和存储地址 和 Windows 套接字 2 API。
要求
Header: afxsock.h