使用Winsock而不静态链接

时间:2014-03-19 16:48:40

标签: c++ linker winsock winsock2

我正在创建一个聊天应用程序,我最终想与朋友一起使用。现在我使用Winsock2进行通信,但我注意到lib文件大大增加了bin的大小。有没有办法在没有静态链接的情况下使用Winsock? .dll文件已包含我需要的所有函数,为什么还需要lib文件?

更新

原来它与sqlite lib有关。出于某种原因,我的箱子尺寸增加了900 kb,我会尝试不同的方式。

2 个答案:

答案 0 :(得分:2)

AFAIK没有静态winsock库。这意味着你没有通过链接.lib来结合库的代码,你实际上是在导入dll导出的函数,我相信这正是你想要的。

您的文件可能会略有增加,这应该只在具有调试符号和许多其他内容的调试版本中非常重要,以便于调试。

尝试使用发布版本,看看它是否会缩小,或许其他调试信息会使您的可执行文件膨胀。

答案 1 :(得分:0)

您只能动态链接Winsock2库。请记住,使用本机每个dll都有lib,以获取导出符号。您正在动态链接。