SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: Gabi1708 en Jueves 23 de Febrero de 2006, 21:29

Título: Mi Aplicacion No Se Refresca
Publicado por: Gabi1708 en Jueves 23 de Febrero de 2006, 21:29
Hola, estoy haciendo una aplicación que copia unos archivos; unos grandes (75Mb) y otros pequeños (5Kb). Para que los copie les he puesto el siguiente código:
Código: Text
  1. Private Sub Cr(ByVal NombreArchivo As String)
  2.            Me.Cursor = Cursors.Wait
  3.            lblAct.Text = "Creando " & Aux3 & NombreArchivo
  4.            Me.Refresh()
  5.            If System.IO.File.Exists(Aux3 & NombreArchivo) Then
  6.               System.IO.File.SetAttributes(Aux3 & NombreArchivo, FileAttributes.Normal)
  7.               End If
  8.            If Not System.IO.Directory.Exists(Aux3) Then
  9.               System.IO.Directory.CreateDirectory(Aux3)
  10.            End If
  11.            System.IO.File.Copy(Aux & NombreArchivo, Aux3 & NombreArchivo, True)
  12.            Call PB()
  13.            Me.Cursor = Cursors.Default
  14. End Sub
  15.  


cuando llamo al sub Cr, lo copia todo perfectamente, pero el problema es que el Me.Refresh sólo lo hace si no minimizo la ventana. Lo explico mejor graficamente:

Este es el programa despues de haber copiado el archivo (el lblAct y la barra de progreso no se vuelven a mover hasta que se finalize la instalación):
(http://img493.imageshack.us/img493/1325/gtavcmap9qc.png)

Este es el programa despues de haberlo minimizado y restaurado (no vuelve a aparecer nada hasta que termine la instalación):

(http://img493.imageshack.us/img493/7381/gtavcmar4wo.png)

Gracias por su atencion. Espero que encuentren una solución.
Título: Re: Mi Aplicacion No Se Refresca
Publicado por: jodijo5 en Lunes 6 de Marzo de 2006, 01:44
pues supongo que si le pones como una tarea aparte, ya no pasarà nada,

declaras un objeto de la clase thread)creo que esta en system.io, bueno por ahi lo buscas) y en el constructor le mandas la funcion esa, porque no investigas un poco sobre precesos en .net, te ayudaria mas, pero no tengo mis apuntes a lamno, si puedo para mañana te los doy