Page 1 of 1
CopyFIle()
Posted: Wed Dec 19, 2018 3:56 pm
by Jorge Jaurena
Buen dia.
Necesito copiar archivos y uso CopyFile(), ocurre que cuando alguna carpeta tiene en el nombre algun espacio no copia nada, ahora si no hay espacios si.
Aclaracion: esto ocurre en un Win 10 de 64 pero en un Win 7 de 32 anda bien.
Uso Harbour y FWH.
Gracias.
Jorge Jaurena
Re: CopyFIle()
Posted: Wed Dec 19, 2018 4:16 pm
by karinha
Intenta asi, usando FILECOPY():
Code: Select all
#include "FiveWin.ch"
FUNCTION Main()
LOCAL cSourceFile := "C:\FWH1701\SAMPLES\TUTOR04.PRG"
LOCAL cTargetFile := "C:\TEMP\TURO04.TXT"
? "Copiar de", cSourceFile, "Para", cTargetFile, "..."
? "Copiado", FileCopy( cSourceFile, cTargetFile ), "bytes"
RETURN NIL
Re: CopyFIle()
Posted: Thu Dec 20, 2018 11:57 am
by Jorge Jaurena
Buen dia.
Gracias por tu respuesta pero hace lo mismo que CopyFile(), en un 7 de 32 anda perfecto todo pero en un 10 de 64 no anda pero solo cuando en el medio del nombre del directorio de destino hay espacios.
Hago esto:
FileCopy( "Origen.pdf", "C:\APPS\Wps Gestion Bin\PDF\Destino.pdf")
El problema esta en la parte en negrita, si no tuviera blancos copia bien.
Gracias
Jorge Jaurena
Re: CopyFIle()
Posted: Thu Dec 20, 2018 12:10 pm
by hmpaquito
Hola,
Hazlo con COPY FILE o su equivalente __CopyFile()
Regards
Re: CopyFIle()
Posted: Thu Dec 20, 2018 12:15 pm
by karinha
Code: Select all
/*
* SPN.PRG
*
* cShortName() - FilePath Long to Short (GetShortPathNameA())
*
* Soporte a Funciones del Api de Windows
*
* Andrade A. Daniel - 2002
* Rosario, Argentina
*
* Libre Distribución
*/
/*
* cShortName()
*/
FUNCTION cShortName( cLong )
LOCAL cShort := Space( 164 ) + Chr( 0 )
LOCAL nBuffer := 164
LOCAL nLen
nLen := GetSPName( cLong, @cShort, nBuffer )
cShort := Left( cShort, nLen )
RETURN( cShort )
// Windows Api
DLL32 STATIC FUNCTION GetSPName( lpszLongPath AS STRING, lpszShortPath AS STRING, lBuffer AS LONG ) ;
AS LONG PASCAL FROM "GetShortPathNameA" LIB "kernel32"
Re: CopyFIle()
Posted: Thu Dec 20, 2018 12:25 pm
by karinha
\samples,
GETDIR.PRG
TESTDROP.PRG
LONGNAME.PRG
TESTLFN2.PRG
mira y comente, se funciona.
Saludos.
Re: CopyFIle()
Posted: Thu Dec 20, 2018 4:20 pm
by nageswaragunupudi
Jorge Jaurena wrote:Buen dia.
Necesito copiar archivos y uso CopyFile(), ocurre que cuando alguna carpeta tiene en el nombre algun espacio no copia nada, ahora si no hay espacios si.
Aclaracion: esto ocurre en un Win 10 de 64 pero en un Win 7 de 32 anda bien.
Uso Harbour y FWH.
Gracias.
Jorge Jaurena
Please try FWH function
LZCopyFile( cSrc, cDst )
Eg:
Code: Select all
? lzCopyFile( "c:\fwh\samples\tutor01.prg", "c:\tests\spaced folder\tutor01.prg" )
I am using Windows 10 64-bits.
For me CopyFile() function is working correctly even with folder names containing spaces.
I see no problem.