Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-07-2005
HARD-SOFT HARD-SOFT is offline
Registrado
 
Registrado: ago 2004
Posts: 6
Poder: 0
HARD-SOFT Va por buen camino
api SHFILEOPSTRUCT

Muy buenas
He visto una muy buena explicacion sobre copiar directorios y ficheros
La he implementado añadiendole FOF_SILENT para que no muestre los ficheros
La pregunta es:
Hay alguna forma de crear una funcion para que cuando la ejecutemos cancele el progreso de copia
es por si una vez lanzada la copia, la queremos cancelar
Muchas gracias

Antonio
Responder Con Cita
  #2  
Antiguo 18-07-2005
Avatar de yusnerqui
yusnerqui yusnerqui is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuba
Posts: 679
Poder: 21
yusnerqui Va por buen camino
Hola

Creo que sería más fácil ayudarte si mostraras tu código, puesto que así, sin más ni más, lo único que se me ocurre es un botón cancelar, que haga falsa una variable global, y un siclo que se esté ejecutando hasta que termine el copiado o la variable tome valor falso, para que esto funcione en el siclo además de tu implementación debe estar la instrucción Application.ProcessMessages
__________________
Lo importante no es llegar primero, sino saber llegar.

Para que puedas llegar mejor lee la Guia de Estilo

Responder Con Cita
  #3  
Antiguo 21-07-2005
HARD-SOFT HARD-SOFT is offline
Registrado
 
Registrado: ago 2004
Posts: 6
Poder: 0
HARD-SOFT Va por buen camino
Shfileopstruct?

procedure TForm1.CopiaGClick(Sender: TObject);


// funcion copiar
function CopiaTodo(Origen,Destino : String) :
LongInt;
var
F : TShFileOpStruct;
sOrigen, sDestino : String;
begin
Result := 0;
sOrigen := Origen + #0;
sDestino := Destino + #0;

with F do
begin
Wnd := Application.Handle;
wFunc := FO_COPY;
pFrom := @sOrigen[1];
pTo := @sDestino[1];
fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR or FOF_SILENT or FOF_NOERRORUI;
end;

Result := ShFileOperation(F);
end;

var
ORIGEN, DESTINO : String;

Begin

ORIGEN := Tabladirectorios.FieldByName('ORIGEN').AsString;
DESTINO := Tabladirectorios.FieldByName('DESTINO').AsString;
CopiaTodo(ORIGEN + '\*.*', DESTINO);
end;

quisiera saber si hay alguna manera de que no se bloquee el programa mientras copia
si se puede cancelar el proceso, si se quiere y si hay alguna manera de hacer las copias
incrementales

Muchas gracias

Antonio
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 01:18:00.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi