Win32错误LNK2019:未解析的外部符号

时间:2012-06-20 00:33:06

标签: winapi winsock

我目前正在尝试从http://johnnie.jerrata.com/winsocktutorial/学习WinSock编码,但是当我编译我的侦听套接字时,我得到了9 error LNK2019: unresolved external symbol个错误。它们看起来都是在代码中使用前缀为下划线的代码中使用的相同函数名称referenced in function _WinMain@16

当我运行可供下载的代码示例时,也会发生这种情况,因此我认为我没有犯错。

什么是未解决的外部因素,如何修复?如果需要,我可以发布代码,但它在该链接上都是可见的。我正在使用Visual Studios 2010,Win32项目。

1 个答案:

答案 0 :(得分:1)

未解决的外部是链接器错误,告诉您没有将那些未解析的外部符号链接到二进制文件中。

从您关联的网站引用:

  

随意下载整个教程代码清单。请记住,本教程中提供的任何代码都应该与Winsock库链接,通常是wsock32.lib或类似名称的。此外,当使用完全如您自己的IDE(Dev-C ++,Microsoft VC ++,C ++ Builder等)中的教程中所示的代码时,选择使用WinMain()构建Windows项目以避免错误。

链接它的方法之一是:

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

另外,请考虑使用Boost.Asio而不是原始的WinSock。