日记:如何在MFC中使用Winsock2

来源:互联网 发布:银河铁道之夜 知乎 编辑:程序博客网 时间:2024/06/14 03:22

日记:如何在MFC中使用Winsock2

目前使用的Visual Studio 6.0的MFC4.2使用的是Winsock1.1,听说MFC7.1中使用的也是。

最近,为了使用WSAIoctl,需要把使用Winsock2,不过不能直接在项目中Include Winsock2.h,因为Winsock2.h是Winsock.h的一个超集,直接添加会与已包含的winsock.h发生命名冲突。

在网上参考了一些相关的资料,最后将MFC中引用的winsock1.1替换为了winsock2。经测试可行,而且应该没有什么副作用,XP及之后的Windows都支持Winsock2。

替换方法:

MFC通过AFXSOCK.H来引用Winsock1.1并提供了一些面向对象的封装。只需将其中的引用替换即可。

将AFXSOCK.H 23行的

#include <winsock.h>

替换为:

#include <winsock2.h>

 

另将其中的

#pragma comment(lib, "wsock32.lib")

替换为:

#pragma comment(lib, "Ws2_32.lib")

分类: C++
绿色通道: 好文要顶 关注我 收藏该文与我联系 
泉子
关注 - 38
粉丝 - 5
+加关注
0
0
(请您对文章做出评价)
« 上一篇:C#:请向C++传递全局委托对象以用于回调
» 下一篇:CProfile : 读写私有INI配置文件
原创粉丝点击