Я пытаюсь загрузить ZIP-файл по ссылке, используя функцию URLDownloadFileW. Часть кода, которую я сейчас разработал с помощью этой функции:
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 Ошибка] Ошибка: Неразрешенный внешний URLDownloadToFileW, на который ссылается C: \ USERS \ ADMINISTRADOR \ DESKTOP \ SD MANUTENÇÃO \ WIN32 \ DEBUG \ SDSUPER449.OBJЯ не нахожу полезных результатов поиска по этому поводу. У кого-нибудь есть идеи, что это значит?
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, поэтому вы получаете линкер ошибка.
Других решений пока нет …