FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Copiar carpeta(s) con ProgressBar
Hola a todos:
Gracias por su atencion en mis anteriores preguntas me han dervido mucho sus respuestas, el motivo por el vuelvo a solicitar su ayuda es la siguiente: Estoy diseñando un programa para que ma haga respaldos de informacion de una carpeta a otra, esta operacion la hago con ShFileOpStruct, necesito saber si es una buena forma de hacerlo, y de ser buena como puedo hacer para indicar con una ProgressBar cuanto lleva del total, aparte si son varias carpetas que la misma ProgressBar sea para el total de todas las carpetas; se que con ShFileOpStruct puede mostrar una ventana de windows con el progreso de la operacion, pero no es lo que necesito, pero muestra el progreso de la carpeta que se esta copiando pero no del total. Espero haberme explicado y ojalá me puedan ayudar. Gracias. dvz |
#2
|
||||
|
||||
Puedes usar CopyFileEx, que utiliza un CallBack para poder generar el progressbar a mano, y calcular el tamaño total de todos los archivos a copiar, para definir el valor máximo del progress.
Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#3
|
||||
|
||||
Mírate esta función:
Copia ficheros con Progreso. Código:
procedure CopyFiles(const Source,Destination: String); var SHFileOpStruct : TSHFileOpStruct; begin if FileExists(Source) then begin FillChar(SHFileOpStruct,SizeOf(TSHFileOpStruct),#0); with SHFileOpStruct do begin Wnd:=Application.Handle; wFunc:=FO_COPY; fFlags:=FOF_ALLOWUNDO; hNameMappings:=nil; pFrom:=PChar(Source+#0+#0); pTo:=PChar(Destination+#0+#0); end; ShFileOperation(SHFileOpStruct); end; end;
__________________
Guía de Estilo de los Foros Cita:
|
#4
|
|||
|
|||
Cita:
Saludos !! |
|
|
|