Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   copiar archivos de un directorio a otro (https://www.clubdelphi.com/foros/showthread.php?t=95164)

LACV 22-04-2021 21:39:20

copiar archivos de un directorio a otro
 
Buena tarde

estoy intentando copiar archivos de un directorio pero no se que error estoy cometiendo ya que no me lo permite por que no tiene acceso


Código Delphi [-]

//esta es la función para llevar el proceso de la rutina 

function ProgressRoutine(TotalFileSize, TotalBytesTransferred, StreamSize,
  StreamBytesTransferred: LARGE_INTEGER;
  dwStreamNumber, dwCallbackReason: DWORD;
  hSourceFile, hDestinationFile: THandle; lpData: Pointer): DWORD;
var
  Value: integer;
begin
  Application.ProcessMessages();
  if (dwCallbackReason = CALLBACK_CHUNK_FINISHED) then
    FrmUpdateCopy.bp.Progress := (int64(TotalBytesTransferred) * 100)
      div int64(TotalFileSize);

  Result := PROGRESS_CONTINUE;
end;


//con el botón utilizo el copyfileex para poder realizar el copiado de los datos pero me arroja que los archivos no tienen permiso 

procedure TFrmUpdateCopy.BtnIniciarClick(Sender: TObject);
var
  Fuente, Destino: PChar;
begin

  Fuente := PChar(ExtractFilePath(Application.ExeName) +
    '\data\c\temp\update\');
  Destino := PChar(ExtractFilePath(Application.ExeName));

  Cancel := false;
  CopyFileEx(Fuente, Destino, @ProgressRoutine, nil, @Cancel, 0);
  ShowMessage(SysErrorMessage(GetLastError()));
end;

de antemano les agradesco

LACV 22-04-2021 21:56:43

Que pena a ver abierto este hilo sin a ver documentado correctamente sobre CopyFileEx; encuentro que debe ser la ruta con un nombre completo del archivo, además si es para diversos archivos hay que repetir el CopyFileEx cuantas veces sea necesario.

nuevamente pido disculpas

http://www.clubdelphi.com/foros/show...ght=CopyFileEx

Casimiro Notevi 22-04-2021 22:12:36

Ahí queda escrito y publicado para quien tenga el mismo problema ^\||/

mRoman 23-04-2021 21:11:12

Probablemente la carpeta de destino no tenga permisos para copiar...no será eso?. Usas Linux o Windows?...digo por las rutas que describes en tu código.
UPS...ya quedó resuelto.!!! jajajaja, no cheque los demás comentarios.


La franja horaria es GMT +2. Ahora son las 15:49:43.

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