Hola gente!

 

Carlos, habría que probar si funciona en consola, pero:

http://msdn.microsoft.com/en-us/library/ack30t8y%28VS.90%29.aspx

dice que uno de los parámetros:

If showUI is set to True, a dialog box appears that shows the progress of
the operation; the dialog box contains a Cancel button that can be used to
cancel the operation. The dialog box is not modal, and therefore does not
block user input to other windows in the program.

 

Otra opción es:

DownloadFile outputs trace information when you enable network tracing in
your application. For more information, see Enabling
<http://msdn.microsoft.com/en-us/library/a6sbz1dx%28v=VS.90%29.aspx>
Network Tracing.

 

Otra opcion (la que intentaría yo, si no anda o no es factible tener el
dialog box) es lanzar un thread en paralelo que vaya revisando cada 10
segundos el tamanio del archivo (supongo que temporario, antes de ser
renombrado al nombre final), y digamos, cada vez que pase de 100000k imprima
un punto en la consola. Con una variable global, que el thread esta
monitoreando, se le avisa cuando el archivo fue completamente bajado en el
thread principal.

 

Tambien se podría lanzar el download en un thread en paralelo, y en el
principal, seguir interactuando con el usuario, o monitoreando esa bajada.

 

Nos leemos!

 

Angel “Java” Lopez

http://www.ajlopez.com

 

 

De: puntonet@mug.org.ar [mailto:punto...@mug.org.ar] En nombre de Carlos A.
Schroeter
Enviado el: Tuesday, September 14, 2010 1:44 AM
Para: puntonet@mug.org.ar
Asunto: [puntonet] Bajar archivos desde aplicacion de consola

 

Hola Grupo
Apelo una vez mas a su valiosa ayuda
Estoy bajando con una aplicacion de consola un archivo utilizando
my.computer.network.donwloadfile
El tema es que el archivo en cuestion es bastante pesado, y aun cuando
termina bajandolo sin problemas el usuario no puede visualizar que esta
pasando, aun cuando pongo a verdadero el parametro de visualizar el el
estado del proceso (supongo porque no es una aplicacion winform)
Hay manera de visualizar el proceso en una aplicacion de consola?....me
conformo con algo asi como Console.WriteLine(porcentajeavance)
Desde ya muchas gracias

-- 
Carlos A. Schroeter



Responder a