Page 1 of 1

directoryrecurse para copias de seguridad (SOLUCIONADO)

PostPosted: Wed Apr 28, 2021 7:07 pm
by Loren
Hola compañeros:

Intengo leer carpeta con subcarpetas y archivos para hacer copias de seguridad.

Si hago
Code: Select all  Expand view
aFiles := directoryrecurse( "C:\programa\*.*",, .f. )  && funciona PERFECTO Y devuelve matriz llena !!


Si lo intento en red local donde los archivos están en "otroequipo" (y con permiso de lectura y escritura)...
Code: Select all  Expand view
aFiles := directoryrecurse( "\\OtroEquipo\programa\*.*",, .f. ) && NO funciona. La matriz siempre vacia. 



También ejecuté el EXE como administrador, pero sigue igual
¿Cómo tengo que hacer?

Mil gracias
LORENZO.

Re: directoryrecurse para copias de seguridad

PostPosted: Thu Apr 29, 2021 12:52 pm
by karinha
Code: Select all  Expand view

#include "FiveWin.ch"  

FUNCTION Main()

   LOCAL cArq, cExt, cPath, cFile, cEncontrou, nI

   cArq  := ""
   cExt  := ""
   cPath := ""

   cPath := "C:\FWH1306\SAMPLES\"

   cFile := "
TESTE.PRG"

   // aFile := DIRECTORYRECURSE( cPath + cFile )

   // ou:

   aFile := DIRECTORY( cPath + cFile )

   If Len(aFile)==0

      ? "
Arquivo Não Encontrado"

   Else

      For nI := 1 to Len( aFile )

         hb_FNameSplit( aFile[nI,1], @cPath, @cArq, @cExt )

         ? cPath+"
"+cArq+" "+cExt+" Perfeito, encontrou!"

      Next

      aFiles := ALLTRIM( cPath+cArq+cExt )

      cEncontrou := aFiles

      IF FILE( cEncontrou )  // Encontrou, mostra...

         ? cEncontrou

      ENDIF

   EndIf

RETURN NIL


Saludos.

Re: directoryrecurse para copias de seguridad

PostPosted: Thu Apr 29, 2021 4:43 pm
by VictorCasajuana
directoryrecurse() no sabía de la existencia de esta función. En wiki.fivetechsoft.com no la he visto y en samples veo 3 ejemplos pero sin parámetros apenas. Algún sitio donde pueda ver como funciona con todos sus parámetros?
Gracias.

Re: directoryrecurse para copias de seguridad

PostPosted: Thu Apr 29, 2021 5:24 pm
by cnavarro

Re: directoryrecurse para copias de seguridad

PostPosted: Thu Apr 29, 2021 7:27 pm
by Baxajaun
VictorCasajuana wrote:directoryrecurse() no sabía de la existencia de esta función. En wiki.fivetechsoft.com no la he visto y en samples veo 3 ejemplos pero sin parámetros apenas. Algún sitio donde pueda ver como funciona con todos sus parámetros?
Gracias.

Victor !

Esa función debe ser de xHarbour.

Muchas gracias.

Saludos,

Re: directoryrecurse para copias de seguridad

PostPosted: Thu Apr 29, 2021 8:30 pm
by Victor Casajuana Mas
Gracias, sempre aprendiendo!

Enviado desde mi moto g(9) plus mediante Tapatalk

Re: directoryrecurse para copias de seguridad

PostPosted: Fri Apr 30, 2021 11:45 am
by karinha

Re: directoryrecurse para copias de seguridad

PostPosted: Fri Apr 30, 2021 2:48 pm
by VitalJavier
Todas las copias de archivos los hago con:

oFs := CreateObject( "Scripting.FileSystemObject" )

por si quires intentar.

Re: directoryrecurse para copias de seguridad (SOLUCIONADO)

PostPosted: Fri Apr 30, 2021 3:08 pm
by Loren
Solucionado!!

En vez de asignar la ruta completa:
\\otroequipo\programa\...

Creo una unidad de red y se la asigno y listo!! Por ejemplo:
R:\


...y listo!! ahora lee perfectamente carpetas, subcarpetas y archivos.... Me devuelve una matriz llena.

Gracias a todos y particularmente a Mr. Rao.
LORENZO.

Re: directoryrecurse para copias de seguridad (SOLUCIONADO)

PostPosted: Mon May 03, 2021 4:46 am
by nageswaragunupudi
Loren wrote:Hola compañeros:

Intengo leer carpeta con subcarpetas y archivos para hacer copias de seguridad.

Si hago
Code: Select all  Expand view
aFiles := directoryrecurse( "C:\programa\*.*",, .f. )  && funciona PERFECTO Y devuelve matriz llena !!


Si lo intento en red local donde los archivos están en "otroequipo" (y con permiso de lectura y escritura)...
Code: Select all  Expand view
aFiles := directoryrecurse( "\\OtroEquipo\programa\*.*",, .f. ) && NO funciona. La matriz siempre vacia. 



También ejecuté el EXE como administrador, pero sigue igual
¿Cómo tengo que hacer?

Mil gracias
LORENZO.


Code: Select all  Expand view
directoryrecurse( "\\OtroEquipo\C\programa\*.*", ... )

Where "C" is the drive.
This works for me