Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Conocen Copyfile.? (https://www.clubdelphi.com/foros/showthread.php?t=8270)

LucasArgentino 16-03-2004 13:16:46

Conocen Copyfile.?
 
Por empezar les queria dar mis condolencias a todos mis hermanos españoles por tan desgraciada situacion que les toco vivir, espero que este sea un momento de reflexion en estos momentos sabiendo siempre que la justicia llega. Mis deseos de PAZ y tranquilidad para todos ustedes desde un simple amigo de Argentina.

Bueno con respecto a los que nos compete, les queria hacer una consulta con respecto a CopyFile ya que he logrado que funciones de este modo

Copyfile(pchar('base.mdb'),pchar('16-03-2004.mdb'),falso); :(

Pero el problema se da si existe el archivo de destino, no me sobreescribe el archivo nuevamente como yo deseo.
Tampoco me funciona si pongo un path antes del nombre del archivo como por ejemplo 'backup\16-03-2004.mdb' esto en el destino

Si alquien pordria ayudarme con esto de los archivos le agradeceria muchisimo.
Espero su respuesta amigos y suerte.

jachguate 16-03-2004 14:16:35

Cita:

Empezado por ms win sdk help
BOOL CopyFile(

LPCTSTR lpExistingFileName, // pointer to name of an existing file
LPCTSTR lpNewFileName, // pointer to filename to copy to
BOOL bFailIfExists // flag for operation if file exists
);

bFailIfExists

Specifies how this operation is to proceed if a file of the same name as that specified by lpNewFileName already exists. If this parameter is TRUE and the new file already exists, the function fails. If this parameter is FALSE and the new file already exists, the function overwrites the existing file and succeeds.

según esto, si el último parámetro es false... debiera sobreescribirlo. Eso si, no dice nada de como se comportará si el archivo existe y es de solo lectura. Por lo pronto, estas seguro que falso vale false???

Te sugiero utilizar el CopyFile como condicion en un if, y valerte de GetLastError para ver porque está fallando.

Además, podrias chequear vos mismo que el camino para CopyFile esté libre, valiendote de las rutinas FileExists, GetAttr, SetAttr y DeleteFile.

Hasta luego.

;)


La franja horaria es GMT +2. Ahora son las 08:10:57.

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