Я пытаюсь загрузить файл в
char* appdata = getenv("APPDATA");
lpURLDownloadToFile URLDownloadToFile;
HMODULE hUrlmon = LoadLibrary("URLMON.DLL");
URLDownloadToFile = (lpURLDownloadToFile)GetProcAddress(hUrlmon, "URLDownloadToFileA");
URLDownloadToFile(0, "http://example.com/test.zip",appdata+"test.zip", 0, 0);
У меня нет ошибки, когда я пишу путь вручную, но я получаю ошибку, когда я пытаюсь использовать appdata + «test.zip»
Как мне это сделать. Благодарю.
Вы не можете объединить char*
указатели, добавляя их так, вам нужно объединить эти строки. Вы можете использовать std:string
вместо того, чтобы поддержать operator+=
,
std::string appdata(getenv("APPDATA"));
appdata += "test.zip";
HMODULE hUrlmon = LoadLibrary("URLMON.DLL");
URLDownloadToFile = (lpURLDownloadToFile)GetProcAddress(hUrlmon, "URLDownloadToFileA");
URLDownloadToFile(0, "http://example.com/test.zip", appdata.c_str(), 0, 0);
Других решений пока нет …