winsock.h与winsock2.h出现重定义或不同的链接

简介:

winsock2.h的内容,在文件开头有如下宏定义即可解决:


#ifndef _WINSOCK2API_

#define _WINSOCK2API_

#define _WINSOCKAPI_ 

#endif


_WINSOCK2API_的定义是防止头文件重复包含winsock2.h。_WINSOCKAPI_的定义则是为了防止对winsock.h的包含,即是说,如果用户先包含了winsock2.h就不允许再包含winsock.h了,因为winsock.h的头部同样存在如下的保护措施:


#ifndef _WINSOCKAPI_

#define _WINSOCKAPI_


错误 C2375 “WSAUnhookBlockingHook”: 重定义;不同的链接



详尽的解析

http://chinaxiangf.blog.163.com/blog/static/79714331201332593244640/





     本文转自fengyuzaitu 51CTO博客,原文链接:http://blog.51cto.com/fengyuzaitu/1959219,如需转载请自行联系原作者


相关文章
|
Unix
apue.h头文件
最近在学习UNIX的编程,用的书是《UNIX环境高级编程》,看到书中有很有实例,我用的操作系统是RadHat,照着书把程序清单输入后编译却通不过,显示的错误是没有“apue.h头文件”。这下对我这只菜鸟来说就是当头一棒,这不坑爹吗?就照着书把程序再抄了一遍,发现出现同样的问题,这下引起我的思考。
863 0
|
C语言 数据格式
stdio.h头文件中申明的基本函数
调用scanf函数时,需传入变量的地址作为参数,scanf函数会等待标准输入设备(键盘等)输入数据,并且将输入的数据赋值给地址对应的变量. #include #include int main(int argc,const char *argv[],const char **env[]) {    ...
676 0
|
机器学习/深度学习 C语言
winsock2之最简单的win socket编程
原文:winsock2之最简单的win socket编程   server.cpp #include #include #pragma comment(lib,"ws2_32.lib") int main(int argc,char **argv) { //创建套接字 ...
1365 0
|
C++ C语言 API
__declspec,__cdecl,__stdcall都是什么意思?有什么作用?
__cdecl和__stdcall都是函数调用规范(还有一个__fastcall),规定了参数出入栈的顺序和方法,如果只用VC编程的话可以不用关心,但是要在C++和Pascal等其他语言通信的时候就要注意了,只有用相同的方法才能够调用成功.
1625 0
|
iOS开发 Windows API
在WinSock上使用IOCP
因此你应该使用只被Winsock2中IOCP允许的函数来使用IOCP。在ReadFile和WriteFile中会发生的额外的参数重整以及模式转换只会发生在一种情况下,那就是如果句柄的提供者并没有将自己的WSAPROTOCOL_INFO结构中的DwServiceFlags1设置为XP1_IFS_HANDLES。
1452 0

热门文章

最新文章