Je suis curieux de savoir pourquoi j'ai des problèmes avec cette fonction. Je télécharge un fichier PNG sur le Web vers un chemin de destination. Par exemple, en téléchargeant l'image Google sur le lecteur C:WinINet problème pour télécharger le fichier au client?
netDownloadData ("http://www.google.com/intl/en_ALL/images/srpr/logo1w.png", "c: \ file.png");
La taille du fichier est correcte après le téléchargement. Rien ne retourne faux. Lorsque j'essaie de l'ouvrir, l'image ne s'affiche pas. Toutes les idées sont utiles. Merci!
Voici le code:
bool netDownloadData(const char *strSourceUrl, const char *strDestPath)
{
HINTERNET hINet = NULL;
HINTERNET hFile = NULL;
char buffer[1024];
DWORD dwRead;
String sTemp;
FILE *fp = NULL;
DWORD size = 0;
// Open a new internet session
hINet = netInit();
if (hINet == NULL) {
sprintf(buffer, "Initializing WinINet failed.", strSourceUrl);
utilLog(buffer);
netCloseHandle(hINet);
return false;
}
// Open the requested url.
hFile = netOpenUrl(hINet, strSourceUrl);
if (hFile == NULL) {
sprintf(buffer, "URL failed upon loading: %s\n", strSourceUrl);
utilLog(buffer);
netCloseHandle(hINet);
return false;
}
// Read file.
while (InternetReadFile(hFile, buffer, 1023, &dwRead))
{
if (dwRead == 0)
break;
buffer[dwRead] = 0;
sTemp += buffer;
size += dwRead;
}
// Load information to file.
fp = fopen(strDestPath, "wb");
if (fp == NULL)
return false;
fwrite(sTemp, size, 1, fp);
fclose(fp);
InternetCloseHandle(hFile);
InternetCloseHandle(hINet);
return true;
}
J'ai bien travaillé. Merci! – Phil