【问题标题】:unresolved token "extern "c" long"未解析的令牌“extern”c“long”
【发布时间】:2021-01-13 03:47:23
【问题描述】:

我正在尝试编写一个 c++ 下载器(学习目的)

还有这一行: URLDownloadToFile(NULL, dwnld_URL.c_str(), savepath.c_str(), 0, NULL);

给我一​​个链接器错误

Error   LNK2028 unresolved token (0A0000D1) "extern "C" long __stdcall URLDownloadToFileA(struct IUnknown *,char const *,char const *,unsigned long,struct IBindStatusCallback *)" (?URLDownloadToFileA@@$$J220YGJPAUIUnknown@@PBD1KPAUIBindStatusCallback@@@Z) referenced in function "unsigned long __stdcall MainThread(struct HINSTANCE__ *)" (?MainThread@@$$FYGKPAUHINSTANCE__@@@Z)   projectname C:\Users\****\*****.obj 1   

同一行代码似乎更早地工作,我不明白为什么它突然停止构建。 非常感谢任何帮助!

【问题讨论】:

  • 能提供sn-p的代码吗?
  • 你链接到Urlmon了吗?
  • 是否更改了库或外部依赖路径?

标签: c++ visual-studio dll download linker-errors


【解决方案1】:

您是否添加了以下代码?如果没有,我建议你可以添加它。因为你应该在使用URLDownloadToFile时链接urlmon.lib

#include <urlmon.h>
#pragma comment(lib, "urlmon.lib")

【讨论】:

    猜你喜欢
    • 2012-06-19
    • 1970-01-01
    • 2014-04-24
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-02
    相关资源
    最近更新 更多