Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   No puedo copiar archivos (https://www.clubdelphi.com/foros/showthread.php?t=68237)

Enric 02-06-2010 17:52:10

No puedo copiar archivos
 
Hola
estoy utilizando el siguiente codigo en delphi 2010 y windows 7 para copiar un archivo de un directorio a otro y no funciona. ¿ Agien sabe por que no funciona ?
-------------------------
sArchivo := 'C:\HGDocs\FT\FT_'+mostres.FieldByName ('codic').AsString+'.pdf';
if not CopyFile(PChar('sPath'),PChar(sArchivo),False) then
MessageDlg('No he podido copiar el fichero', mtWarning,[mbOk], 0);

-------------------------
Dice 'No he podido copiar el fichero' y no lo copia. El Archivo de origen existe, y el directorio de destino tiene los permisos adecuados.

Gracias

Faust 02-06-2010 18:02:14

Saludos y bienvenido compañero... te invito a leer la Guia de estilo para que puedas formular tus dudas de manera correcta.

Nos falta más info...

¿Te lanza un mensaje de error, checaste si existe el archivo origen, si existe el directorio estino?

Neftali [Germán.Estévez] 03-06-2010 10:21:27

Prueba a cambiar el MessageBox por este, que añade el último mensaje de error del sistema, a ver si con eso obtienes algo más de info.

Código Delphi [-]
MessageDlg('No he podido copiar el fichero. ' + SysErrorMessage(GetLastError()), mtWarning,[mbOk], 0);

yapt 03-06-2010 14:13:41

En cualquier caso, si estás usando Delphi 2010, te vendrán muy bien las nuevas clases: TFile, dentro de IOUtils.

Sus métodos, son métodos de clase, así que puedes utilizarla así:
Código Delphi [-]
uses IOUtils;
...
...
...

// El false indica si se sobreescribe el archivo destino en el caso de  que exista.
TFile.Copy(Origen, Destino, false);

Saludos.

Enric 03-06-2010 15:52:22

No puedo copiar archivos
 
Hola
He probado lo que me indicais y el error que me da es el siguiente:

El sistema no puede encontrar el archivo especificado.

Sin embargo tanto el path como el nombre del archivo es correcto.

Gracias por vuestra ayuda

yapt 03-06-2010 16:55:41

Has probado con TFile también ?

Has probado a ejecutar la aplicación como Administrador ?

Saludos.

Enric 03-06-2010 20:04:37

Si
He probado con TFile y como administrador y no funciona.

Neftali [Germán.Estévez] 03-06-2010 20:57:30

Cita:

Empezado por Enric (Mensaje 366088)
He probado lo que me indicais y el error que me da es el siguiente:
El sistema no puede encontrar el archivo especificado.

Pues el error parece claro. Normalmente es debido a que el path es incorrecto o no se tiene acceso a la ubicación. :(:confused::confused::confused:

Chris 04-06-2010 03:23:15

Fijate en que sPath lo tienes entre opostrofes. Por el nombre me supondría que sPath es una variable.

Cita:

Empezado por Enric (Mensaje 365972)
if not CopyFile(PChar('sPath'),PChar(sArchivo),False) then

Saludos

Enric 04-06-2010 09:53:00

Si tenias razon el problema eran las apostrofes, estaba pasando el nombre de la variable como una cadena.

Muchas gracias por vuestra ayuda.


La franja horaria es GMT +2. Ahora son las 09:21:25.

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