FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Cambiar fecha de creaci贸n de un archivo
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 03:51 PM
Buenas estimados

脡sta funci贸n cambia la fecha de modificaci贸n de un archivo
Code (fw): Select all Collapse
SetFDaTi( <cFileName> , [<dFileDate>], [<cFileTime>] ) --> lSuccess


Cu谩l es para cambiar la de creaci贸n

Gracias por la ayuda.
Saludos,



Adhemar C.
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 05:10 PM
Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 07:07 PM

Gracias Jo茫o

No encuentro cual es.

Quiz谩s alguien sabe cual es.

Saludos,



Adhemar C.
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 07:28 PM
Adhemar intenta asi:

Code (fw): Select all Collapse
   hFile := Fopen("ficheroafechar.ext")

   SetFTime(hFile, "10:20:59", "27:11:2019")

   Fclose(hFile)
Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 08:38 PM

Estimado Joao

Con SetFTime no cambia nada.

con SetFDaTi cambia, lo raro es que el explorador de windows el algunas carpetas muestra los archivos con la fecha de creaci贸n de la carpeta donde se encuentra y en otras muestra la fecha de modificaci贸n.

Es bien raro.

Saludos,



Adhemar C.
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 08:40 PM

Puedes intentar renombrar el fichero, copiarlo con el nombre original y borrar el que renombraste

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noci贸n del tiempo

El secreto de la felicidad no est谩 en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 09:16 PM
Gracias estimado Cristobal

La idea es cambiar la fecha en forma masiva

Tengo una versi贸n antigua de File Date Changer que funciona perfecto. Descargu茅 una nueva versi贸n y el Windows Defender no permite que funcione.

Se me ocurri贸 hacer uno propio.
Aqu铆 el c贸digo por si a alguien le interesa y hagan mejoras y pruebas.
Code (fw): Select all Collapse
#include "fivewin.ch"
*
Function Main()
   Private aFiles:={}, aLista, oBrw,xLen,cPath

   SelectCarpeta()  
   CargaTabla()

   DEFINE DIALOG oDlg FROM 0,0 TO 18,57 TITLE "Lista de archivos";oDlg:lHelpIcon:=.F.
     oBrw:=TXBrowse():New( oDlg )
     oBrw:nMarqueeStyle:=5
   oBrw:lHScroll:=.F.
   oBrw:nColDividerStyle:=LINESTYLE_LIGHTGRAY
   oBrw:nRowDividerStyle:=LINESTYLE_LIGHTGRAY
   oBrw:bClrSelFocus:={ || { CLR_BLUE, { { 0.1,16777215,12961221 } }} }
   oBrw:bClrSel:={ || { CLR_BLUE, { { 0.30,16777215,12961210 } }} }
   oBrw:bClrRowFocus:= { || { CLR_BLUE, { { 0.30,16777215,12961210 } }} } 
   oBrw:lHScroll:=.F.
   oBrw:lRecordSelector:=.F.
   oBrw:lAllowRowSizing:= .F.
   oBrw:lAllowColHiding := .F. 
     oBrw:lAllowColSwapping:=.F.
       
       oBrw:SetArray( aFiles, .T. ) 
               
       oBrw:aCols[1]:cHeader := "ARCHIVO"
       oBrw:aCols[1]:nWidth:=302
       oBrw:aCols[2]:cHeader := "FECHA   "
       oBrw:aCols[3]:cHeader := "HORA" 
       oBrw:lHScroll := .F. 
               
       oBrw:CreateFromCode()
      

     ACTIVATE DIALOG oDlg CENTERED ON INIT (BotDlg(oDlg,oBrw),oDlg:Update(),oBrw:Move( 0, 0, oDlg:nWidth()-7, oDlg:nHeight()-70),oBrw:Refresh() )
 
Return nil
*
FUNCTION BotDlg( oDlg, oBrw )
   Local oBtnBar

   @oDlg:nHeight()-60,70  BTNBMP PROMPT "Selec.Carpeta" OF oDlg SIZE 90,18 ACTION ( SelectCarpeta(), CargaTabla(), oBrw:SetArray( aFiles, .T. ) ) 2007
   @oDlg:nHeight()-60,170  BTNBMP PROMPT "Cambiar Fecha" OF oDlg SIZE 90,18 ACTION ( CambiaFecha(), CargaTabla(), oBrw:SetArray( aFiles, .T. )  ) 2007
   @oDlg:nHeight()-60,270 BTNBMP PROMPT "Salir" OF oDlg SIZE 90,18 ACTION oDlg:End()    CANCEL 2007
  
Return Nil
*
Function SelectCarpeta()
  cPath:=cGetDir( "Seleccione la carpeta",hb_CurDrive()+":\",0 )           
  cPath+="\"
Return Nil
*
FUNCTION CargaTabla()
  
   aFiles:={}
   
   aLista:= Directory( cPath+"*.*")
   IF LEN( aLista ) < 1
        MsgBeep()
        MsgStop( "Carpeta vac铆a","ATENCION !!!" )
        SelectCarpeta()
   ENDif
      
   xLen:=LEN( aLista )
   FOR nCount = 1 TO xLen
     AADD( aFiles, { ALLTRIM( aLista[ nCount ][1] ), aLista[ nCount ][3], SUBSTR( aLista[ nCount ][4],1,5 ) } )
   NEXT
Return Nil
*   
FUNCTION CambiaFecha()
 
       FOR I = 1 TO xLen
         cFile:=cPath+ALLTRIM( aLista[ I ][1] )
         SetFDaTi( cFile, Date(),Time() ) 
       NEXT
      
Return Nil
Saludos,



Adhemar C.
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 09:40 PM

Adhemar, si la operaci贸n es para hacerla de forma masiva, el tema cambia claro, lo que yo te propon铆a era para aplicarlo de forma puntual.
Creo recordar que hace tiempo me encontr茅 con el mismo tema que t煤, pero no recuerdo si llegu茅 a solucionarlo. Lo busco y te digo algo si veo una posible soluci贸n.

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noci贸n del tiempo

El secreto de la felicidad no est谩 en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Cambiar fecha de creaci贸n de un archivo
Posted: Wed Nov 27, 2019 09:48 PM

Muchas gracias Cristobal.

Saludos,



Adhemar C.

Continue the discussion