Delphi - Copiando Archivos

 
Vista:

Copiando Archivos

Publicado por Leonardo (1 intervención) el 24/02/2004 21:38:46
Necesito copiar los archivos que aparecen en una lista de un listview (Path completo) alguien sabe como hacerlo sin que Windows pregunte
si quiero sobreescribir, aqui vi un ejemplo pero me marca error al final
Si alguien tiene un ejemplo por favor enviemelo

Aqui esta el Ejemplo... Que estoy haciendo mal?
Soy novato en Delphi
====================================================
procedure TForm1.BtnEjecutaClick(Sender: TObject);
Var
ArchARespaldar:Integer;
I:Integer;
begin
ArchARespaldar:=Form1.Enlistados.Items.Count;
For I := 0 to ArchARespaldar do
if CopyDir(Pchar(Enlistados.Items.Item[I].Caption), Pchar(\'C:\\Prueba\\\')) = True then
end;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function CopyDir(const fromDir, toDir: string): Boolean;
var
fos: TSHFileOpStruct;
begin
ZeroMemory(@fos, SizeOf(fos));
with fos do
begin
wFunc := FO_COPY;
fFlags := FOF_FILESONLY;
pFrom := PChar(fromDir + #0);
pTo := PChar(toDir)
end;
Result := (0 = ShFileOperation(fos));
End;

Gracias...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Copiando Archivos

Publicado por Cuervo (262 intervenciones) el 25/02/2004 02:29:41
No estas haciendo nada mal, pero hay que ponerle un poco mas de pimiento a la bolonnesa...
les aconsejo a todos los programadores de este foro mirar bien el archivo de ayuda de windows Sdk(tambien se puede ver desde delphi en el menu ayuda) y prestar atencion en el topico: ICopyHook::CopyCallback


function DopiarDirCompleto(const DirOrigen, DirDestino: string): Boolean;
var
fos: TSHFileOpStruct;
begin
ZeroMemory(@fos, SizeOf(fos));
with fos do
begin
wFunc := FO_COPY;
fFlags := FOF_NOCONFIRMATION + FOF_SILENT
; // no hace preguntas
pFrom := PChar(fromDir + #0);
pTo := PChar(toDir)
end;
Result := (0 = ShFileOperation(fos));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
DopiarDirCompleto( 'a:\mi carpeta entera, 'c:\mi carpeta entera');
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Copiando Archivos

Publicado por seoane (65 intervenciones) el 26/02/2004 01:53:41
Puede que sea un fallo al escribir tu pregunta pero la linea

ArchARespaldar:=Form1.Enlistados.Items.Count;

Deberia de ser

ArchARespaldar:=Form1.Enlistados.Items.Count -1;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar