La librería de enlace dinámico WinInet.dll es un módulo que contiene funciones relacionadas con Internet utilizados por muchas aplicaciones comunes de Windows para comunicarse a través de Internet . Puede utilizar este archivo DLL en sus propias aplicaciones , desarrollada en cualquier entorno de desarrollo integrado, para descargar un archivo de cualquier tamaño, desde un sitio web mediante el uso de unos buffers simples y calcular correctamente el tamaño del archivo . Instrucciones
1
Crear una nueva función que toma la URL como su único parámetro , utilizando este código:
std :: string GetUrl (const char * URL ) {
2
Insertar este código para crear un nuevo buffer constante para almacenar el tamaño de las piezas que componen el archivo :
const int DownloadBufferSize = 1,024 ;
3
Añadir este código para crear una constante que almacena los errores , en caso de que su programa lanza una:
const std :: string errorString = " eRROR" ;
4
Uso la función HINTERNET de WinInet para abrir una conexión a Internet , antes de intentar descargar el archivo, mediante la inserción de este código:
HINTERNET hInternet = InternetOpen ( " GINA : Versión 0.1 " , INTERNET_OPEN_TYPE_DIRECT , NULL , 0, 0 ), si ( hInternet == NULL) {return errorString ;}
5
Abra la URL mediante el uso de este código:
hINTERNET hFile = InternetOpenUrl ( hInternet , URL , NULL, 0 , 0, 0 ) ; if ( hFile == NULL) {return errorString ;}
6
Crear un tampón que mantiene el tamaño del archivo mediante la inserción de este código:
DWORD sizeBuffer ; longitud DWORD = sizeof ( sizeBuffer ) ;
7
Cómo el tamaño del archivo mediante este código :
bool éxito = HttpQueryInfo ( hFile , HTTP_QUERY_CONTENT_LENGTH