iocp编程错误

转自博客:
http://blog.163.com/xhyzdai@126/blog/static/732533112011111544957703

error C2065: 'WSASocket' : undeclared identifier
error C2065: 'WSABUF' : undeclared identifier
error C2065: 'WSARecvFrom' : undeclared identifier
error C2065: 'WSASendTo' : undeclared identifier

......

在创建工程向导中选择了windows socket后,使用WSASocket等扩展函数,出现以上错误,WSASocket未声明。于是在使用该函数的头文件中添加#include <winsock2.h>,接着又出现下面的问题

......

error C2375: 'WSAStartup' : redefinition; different linkage
error C2375: 'WSACleanup' : redefinition; different linkage
error C2375: 'WSASetLastError' : redefinition; different linkage
error C2375: 'WSAGetLastError' : redefinition; different linkage
error C2375: 'WSAIsBlocking' : redefinition; different linkage

......//错误比刚才还多

上面说明WSAStartup重定义了,但刚才还说未定义标识符呢,为什么VC会如此矛盾?。。

网上关于删除debug文件夹,删除.clw.ncb等文件都没起作用;ws2_32.lib也链接上去了,还是不行。

最后,
误打误撞将#include <winsock2.h>添加到StdAfx.h头文件中,
居然编译通过了!

原文地址:https://www.cnblogs.com/lobsterIT/p/4757718.html