我正在尝试使用URLDownloadFileW函数从链接下载zip文件。我现在用这个函数开发的代码部分是:
UnicodeString URL = "URL.EX";
UnicodeString dir = "C:\";
UnicodeString result = URLDownloadToFileW(NULL,URL.c_str(),dir.c_str(),0,NULL);
if (result != "S_OK")
return;
我已经在标题上声明了Urlmon.h,但是,当我构建项目时它返回我:
[ilink32错误]错误:从C:\ USERS \ ADMINISTRADOR \ DESKTOP \SDMANUTENÇÃO\ WIN32 \ DEBUG \ SDSUPER449.OBJ引用未解析的外部'URLDownloadToFileW'
[ilink32错误]错误:无法执行链接
我找不到任何有用的搜索结果。有人知道这是什么意思吗?
答案 0 :(得分:0)
urlmon.h
来编译代码。编译器创建对URLDownloadToFileW
函数的引用,但不关心函数的存在位置。这就是链接器的工作。
urlmon.lib
来解析编译器对URLDownloadToFileW
函数的引用。
RAD Studio分别在$(BDS)\include\win32\sdk
和$(BDS)\lib\win32\release
文件夹中包含这两个文件。
您需要同时执行这两项操作:
在代码中添加#include <urlmon.h>
语句。
链接到urlmon.lib
文件,方法是将文件添加到项目中,或者通过代码中的#pragma comment(lib, "urlmon.lib")
语句引用它。
您错过了第2步,这就是您收到链接器错误的原因。