您的位置:首页 > 其它

error LNK2019: 无法解析的外部符号 (解决方法)

2011-01-05 10:48 483 查看
在用C++进行套接字编程时遇到下面的错误:

1>------ 已启动生成: 项目: NetClient, 配置: Debug Win32 ------

1> NetClient.cpp

1>c:/my documents/visual studio 2010/projects/netserver/netclient/netclient.cpp(48): warning C4996: 'gets': This function or variable may be unsafe. Consider using gets_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> d:/vs2010/vc/include/stdio.h(277) : 参见“gets”的声明

1>c:/my documents/visual studio 2010/projects/netserver/netclient/netclient.cpp(59): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> d:/vs2010/vc/include/stdio.h(371) : 参见“sprintf”的声明

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _closesocket@4,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _inet_ntoa@4,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _recvfrom@24,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _sendto@24,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _htons@4,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _inet_addr@4,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _socket@12,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _WSACleanup@0,该符号在函数 _main 中被引用

1>NetClient.obj : error LNK2019: 无法解析的外部符号 _WSAStartup@8,该符号在函数 _main 中被引用

1>C:/My Documents/Visual Studio 2010/Projects/NetServer/Debug/NetClient.exe : fatal error LNK1120: 9 个无法解析的外部命令

========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

解决方法如下:

在CPP文件include语句之后加上如下代码:

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

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


这样就可以解决了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐