The WinInet.dll Dynamic Link Library er en modul som inneholder Internett - relaterte funksjoner som brukes av mange vanlige Windows-programmer til å kommunisere over Internett . Du kan bruke denne DLL i dine egne applikasjoner , utviklet i noen integrert utviklingsmiljø , for å laste ned en fil av noen størrelse fra en nettside ved hjelp av noen enkle buffere og riktig beregning av filstørrelsen. Instruksjoner
en
Opprett en ny funksjon som tar nettadressen som sin eneste parameter , bruker denne koden : en
std :: string getUrl ( const char * URL ) {
2
Sett inn denne koden for å lage en ny konstant buffer til å lagre størrelsen på delene som utgjør filen : en
const int DownloadBufferSize = 1024 ;
3
Legg denne koden for å lage en konstant som lagrer feil , i ditt tilfelle programmet kaster ett : en
const std :: string errorString = "FEIL ";
4
bruk den HINTERNET funksjon av WinInet å åpne en Internett-tilkobling , før du prøver å laste ned filen , ved å sette inn denne koden : en
HINTERNET hInternet = InternetOpen ( " GINA : versjon 0.1" , INTERNET_OPEN_TYPE_DIRECT , NULL , 0 , 0 ), hvis ( hInternet == NULL) {return errorString ;}
5
Åpne URL ved hjelp av denne koden : en
hINTERNET hFile = InternetOpenUrl ( hInternet , URL , NULL , 0 , 0 , 0 ), hvis ( hFile == NULL) {return errorString ;}
6
Lag en buffer som holder filstørrelsen ved å sette inn denne koden : en
DWORD sizeBuffer ; DWORD lengde = sizeof ( sizeBuffer ) ;
7
Få filstørrelsen ved å bruke denne koden : en
bool lykkes = HttpQueryInfo ( hFile , HTTP_QUERY_CONTENT_LENGTH