Pero si en el artículo que te pasé está!!!
Fijate que por ahi dice:
For instance, suppose you want to download a 1000 byte file. Instead of making one call to InternetReadFile with a 1000 byte buffer, you can make 10 calls to InternetReadFIle with 100 byte buffers. This way as each call to InternetReadFile completes, you know the download is another 10 percent complete.
Osea, si quieres descargar un archivo de 1000 bytes, en vez de hacer una llamada a InternetReadFile con un buffer de 1000 bytes, mejor haces 10 llamadas a la API con un buffer de 100 bytes. Así, cada vez que la función termina, vas a saber que se completó el 10% de la descarga.
Ahora, si haces 100 llamadas a la función con un buffer de 10 bytes, vas a saber que se completó el 1% de la descarga.
Espero que ahora te sirva la info...
Saludos!