当lib已添加到其他依赖项时,如何在VS中调试未解决的外部符号错误

问题描述 投票:0回答:1

我正在使用在wininet.lib中使用函数的C ++库。在VS2017中编译时,出现链接错误。

我已将wininet.lib添加到项目的其他依赖项中,并确保它位于最终命令行中,但仍会出现链接器错误:

LNK2001无法解析的外部符号__imp_InternetOpenW

但是如果我添加,一切都会编译:

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

根据我的代码。我还有另一个类似的项目,可以在没有#pragma的情况下使用同一库进行编译。

如何调试为什么将lib添加到其他依赖项时VS2017找不到依赖项?

c++ visual-studio visual-studio-2017 linker
1个回答
0
投票

您可能只为特定配置或平台添加了wininet.lib,但为其他组合而构建。请仔细查看您的项目属性。属性对话框的最顶部有两个下拉列表。

这至少将解释#pragma为何起作用,因为无论选择何种配置和平台,它都适用。

© www.soinside.com 2019 - 2024. All rights reserved.