【问题标题】:Win32 error LNK2019: unresolved external symbolWin32错误LNK2019:无法解析的外部符号
【发布时间】:2012-06-20 00:33:06
【问题描述】:

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

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

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

【问题讨论】:

    标签: winapi winsock


    【解决方案1】:

    Unresolved external is linker error,告诉您没有将符号链接到二进制文件中。

    引用您链接的网站:

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

    其中一种链接方式是:

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

    另外,请考虑使用 Boost.Asio 代替原始 WinSock。

    【讨论】:

    • 没有什么比失去理智更糟糕的了,因为你可以通过更彻底的方式解决问题,哈哈。谢谢你,我链接了 wsock32.lib,它马上就可以工作了。
    猜你喜欢
    • 2020-07-09
    • 2011-08-09
    • 1970-01-01
    • 2012-07-10
    • 2013-06-15
    • 2015-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    相关资源
    最近更新 更多