Per il primo quesito: Semplicemente perchè è un file diciamo così nella "directory del progetto" e non nella cartella include di VC.
L'errore che ti da sinceramente non ho capito quale sia, ma in ogni caso proprio ieri mi imbattevo anche io in questa funzione e ti posto una variante adattata per quello che devi farci tu
#include "stdafx.h"
#include <iostream>
#include <string>
#include <string.h>
#include <fstream>
#include <tchar.h>
#include <urlmon.h>
#pragma comment(lib, "urlmon.lib")
using namespace std;
void download(char* sito, char* fSalvato)
{
URLDownloadToFile ( NULL, _T(sito), _T(fSalvato), 0, NULL );
ifstream infile;
char ch;
infile.open (fSalvato);
while(!infile.eof())
{
infile.get(ch);
cout << ch;
}
infile.close();
}
int main()
{
download("http://www.google.com/","miofile.html");
system("PAUSE");
}
Fanne buon uso.
PS: Codice testato e funzionante in VC 2010.
PS2: Se ti danno errore gli identificatori _T vai nel menu in alto in:
Progetto > Proprietà
nella tabella a sinistra seleziona:
Proprietà di Configurazione > Generale
Nelle varie voci troverai: "Set di Caratteri", settalo come: "Utilizza set di caratteri multibyte" .
Ciao ciao, spero di esserti stato utile.