在VC++ 6.0 或 Visual Studio中设置包含链接库lib文件(无法解析的外部符号 __imp__WSAStartup 的解决方案)

      用VS写socket几乎都会遇到这样的问题:在project中调用了winsock函数
WSAStartup、WSACleanup等时,即使include了头文件<winsocket2.h>,编译时还会产生error: 无法解析的外部符号 __imp__WSAStartup。
     这是因为编译winsocket需要一个动态链接库文件(lib)文件,文件名为ws2_32.lib。

     为了把这个ws2_32.lib加载到project当中,有两种方法。

第一种(不推荐):

在菜单   project ->settings -> link  -> object/library   modules   下面按格式输入ws2_32.lib  然后确定即可。

或者在VS里,工程->属性->配置属性->链接器->输入,在"附加依赖项"框最后加上ws2_32.lib,前面记得加分号隔开。

 第二种:

在头文件中加入语句#pragma   comment(  lib,   "ws2_32.lib"   )  来显式加载, 即:

#include  <winsock2.h>
#pragma comment(lib, "WS2_32")

这样下次copy代码编译就行了,不用再配置。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页