Проблемы с URLDownloadToFile

Итак, я пытался сделать несколько простых вещей, таких как загрузка и передача файлов в Visual C ++, и я использовал URLDownloadToFile() функция. Код скомпилирован, и он не выдает никаких ошибок, однако он ничего не загрузит. Очевидно, я не просто бегал сюда в ту минуту, когда мой код не работал, поэтому я сделал некоторые отладки и тому подобное, о которых я упомяну через минуту. Вот код

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

#include <Windows.h>
#include <urlmon.h>
#include <stdio.h>
#include <tchar.h>
#include <string>

using namespace std;

void dwfile();

int main() {
dwfile();
return 0;
}

int dwfile() {
string url("http://0.0.0.0/putty.exe"); // I changed the IP for privacy
string file("C:\\Putty");

const char *strUrl = url.c_str();
const char *strFile = file.c_str(); // I had been testing with these, not currently using them

HRESULT hr = URLDownloadToFile(NULL, url.c_str(), file.c_str(), 0, NULL);

if (FAILED(hr)) {
printf("failed\n");
OutputDebugString("\n");
OutputDebugString("FAILED\n");
OutputDebugString("\n");
GetLastError();
system("pause");
}
}

Имейте в виду, что я не профессионал, и что я не невероятно опыт в C ++. Я прочитал несколько книг, но я нахожусь на более молодой стороне, и в настоящее время я делаю это для развлечения.

Что касается отладки, url а также file будет выдавать ошибки при вызове в URlDownloadToFunction пока я не сделал .c_str() и преобразовал их. Я установил точку останова при вызове функции и заметил, что переменная hr имеет значение 0xcccccccc до следующей точки останова на printf заявление, когда hr тогда имел значение E_ABORT Operation Aborted и ничего больше. Похоже, со строками проблем не было, но больше ничего мне не говорило. Я, честно говоря, просто в тупик. Любая помощь очень ценится.

РЕДАКТИРОВАТЬ

Я чувствую себя идиотом, но я пытался записать в корень моего диска C: \, хотя я забыл включить UAC. Когда я включил его, он загрузил и запустил Putty очень хорошо, хотя я подумываю перейти от URLDownloadToFile () к использованию WinInet. Спасибо за помощь!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]