我在stdAfx.h文件中 加入#include <winsock2.h>
#include <afxsock.h>
这两个头文件
编译后说
LNK2005: "int m_Port" (?m_Port@@3HA) already defined in AA.obj
AA.exe : fatal error LNK1169: one or more multiply defined symbols found
实在是弄不好了 烦劳大哥指点下
我刚开始把 #include <afxsock.h>
注释了 提示我error C2065: 'AfxSocketInit' : undeclared identifier
9 个解决方案
#1
不要放到stdAfx.h里,会被重复包含。你哪个cpp文件需要用到socket,就把这两个头文件放进哪个.cpp里。
而且,建立工程时,如果选择socket支持, #include <afxsock.h> 是自动包含的。
而且,建立工程时,如果选择socket支持, #include <afxsock.h> 是自动包含的。
#2
难道你mfc的socket和winsock都用?
去掉一种吧
去掉一种吧
#3
估计你MFC只用了AfxSocketInit吧?
那样就改一种初始化socket的办法
WSADATA wsaData;
WORD version = MAKEWORD(2, 0);
WSAStartup(version, &wsaData);
那样就改一种初始化socket的办法
WSADATA wsaData;
WORD version = MAKEWORD(2, 0);
WSAStartup(version, &wsaData);
#4
大家的说法是正确的,选择SDK或者MFCsocket一种即可。一版包含的头文件不要放在stdafx里面了。
#5
LS各位大哥
我刚开始用工程向导创建对话框程序时,选择socket支持了
但程序里要用到WSASocket等函数 又添加了 winsock2.h头文件
但如果默认stdAfx.h的话(里面有afxsock.h)
并且在CMYDLg中定义winsock2.h 会出现很多错误 117个错误 估计是两个版本冲突
该怎么解决啊?
难道winsock2.h和afxsock.h不能在一起用吗?
我刚开始用工程向导创建对话框程序时,选择socket支持了
但程序里要用到WSASocket等函数 又添加了 winsock2.h头文件
但如果默认stdAfx.h的话(里面有afxsock.h)
并且在CMYDLg中定义winsock2.h 会出现很多错误 117个错误 估计是两个版本冲突
该怎么解决啊?
难道winsock2.h和afxsock.h不能在一起用吗?
#6
用winsock2.h, 应该还要包含静态库. #pragma comment(lib,"Ws2_32.lib")
#7
ding
#8
stdAfx.h是预编译头,一般是系统默认的。。最好不要动这个文件。
#9
结贴给分
没解决
难道 WINSOCK2.H和afxsock.h真的不能共用吗
只能把AfxSocketInit给删了,直接用WSASTAUP初始化了
没解决
难道 WINSOCK2.H和afxsock.h真的不能共用吗
只能把AfxSocketInit给删了,直接用WSASTAUP初始化了
#1
不要放到stdAfx.h里,会被重复包含。你哪个cpp文件需要用到socket,就把这两个头文件放进哪个.cpp里。
而且,建立工程时,如果选择socket支持, #include <afxsock.h> 是自动包含的。
而且,建立工程时,如果选择socket支持, #include <afxsock.h> 是自动包含的。
#2
难道你mfc的socket和winsock都用?
去掉一种吧
去掉一种吧
#3
估计你MFC只用了AfxSocketInit吧?
那样就改一种初始化socket的办法
WSADATA wsaData;
WORD version = MAKEWORD(2, 0);
WSAStartup(version, &wsaData);
那样就改一种初始化socket的办法
WSADATA wsaData;
WORD version = MAKEWORD(2, 0);
WSAStartup(version, &wsaData);
#4
大家的说法是正确的,选择SDK或者MFCsocket一种即可。一版包含的头文件不要放在stdafx里面了。
#5
LS各位大哥
我刚开始用工程向导创建对话框程序时,选择socket支持了
但程序里要用到WSASocket等函数 又添加了 winsock2.h头文件
但如果默认stdAfx.h的话(里面有afxsock.h)
并且在CMYDLg中定义winsock2.h 会出现很多错误 117个错误 估计是两个版本冲突
该怎么解决啊?
难道winsock2.h和afxsock.h不能在一起用吗?
我刚开始用工程向导创建对话框程序时,选择socket支持了
但程序里要用到WSASocket等函数 又添加了 winsock2.h头文件
但如果默认stdAfx.h的话(里面有afxsock.h)
并且在CMYDLg中定义winsock2.h 会出现很多错误 117个错误 估计是两个版本冲突
该怎么解决啊?
难道winsock2.h和afxsock.h不能在一起用吗?
#6
用winsock2.h, 应该还要包含静态库. #pragma comment(lib,"Ws2_32.lib")
#7
ding
#8
stdAfx.h是预编译头,一般是系统默认的。。最好不要动这个文件。
#9
结贴给分
没解决
难道 WINSOCK2.H和afxsock.h真的不能共用吗
只能把AfxSocketInit给删了,直接用WSASTAUP初始化了
没解决
难道 WINSOCK2.H和afxsock.h真的不能共用吗
只能把AfxSocketInit给删了,直接用WSASTAUP初始化了