随笔分类 -  网络编程

摘要:网上转载:Socket Error代码解释大全Socket error 0 - Directly send error Socket error 10004 - Interrupted function call一个封锁操作被对 WSACancelBlockingCall 的调用中断。 Socket error 10013 - Permission denied以一种访问权限不允许的方式做了一个访问套接字的尝试。 Socket error 10014 - Bad address系统检测到在一个调用中尝试使用指针参数时的无效指针地址。 Socket error 10022 - Invalid a 阅读全文
posted @ 2013-09-04 15:29 梧桐树下的一缕阳光 阅读(4977) 评论(0) 推荐(0)
摘要:因为默认用socket的connect去连接需要三次握手,时间比较长,所以为了提高效率,有一种方法可以解决:unsigned long iMode = 1;fd_set Write,Err;ioctlsocket(sock,FIONBIO,&iMode); //先将socket设置为非阻塞的,connect(sock,(struct sockaddr *)addr,sizeof(addr));//然后去连接,它会立即返回,并不等待确认是否连接成功。iMode = 0;ioctlsocket(sock,FIONBIO,&iMode); //再将socket设置为阻塞的FD_ZER 阅读全文
posted @ 2013-09-04 11:14 梧桐树下的一缕阳光 阅读(477) 评论(0) 推荐(0)
摘要:winsock2还没有关于ipv6的地址转换函数:inet_pton和inet_ntop 上网搜了一份实现的代码,如下: #ifdef _WIN32 const char *inet_ntop(int af, const void *src, char *dst, socklen_t cnt) { if (af == AF_INET) { struct sockaddr_in in; memset(&in, 0, sizeof(in)); in.sin_family = AF_INET; memcpy(&in.sin_addr, src, sizeof(struct in_ad 阅读全文
posted @ 2013-08-30 11:37 梧桐树下的一缕阳光 阅读(684) 评论(0) 推荐(0)