脡sta funci贸n cambia la fecha de modificaci贸n de un archivo
SetFDaTi( <cFileName> , [<dFileDate>], [<cFileTime>] ) --> lSuccessCu谩l es para cambiar la de creaci贸n
Gracias por la ayuda.
Saludos,
Adhemar Cu茅llar
SetFDaTi( <cFileName> , [<dFileDate>], [<cFileTime>] ) --> lSuccessSaludos,
Adhemar Cu茅llar
Gracias Jo茫o
No encuentro cual es.
Quiz谩s alguien sabe cual es.
Saludos,
Adhemar Cu茅llar
hFile := Fopen("ficheroafechar.ext")
SetFTime(hFile, "10:20:59", "27:11:2019")
Fclose(hFile)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 Cu茅llar
Puedes intentar renombrar el fichero, copiarlo con el nombre original y borrar el que renombraste
#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 NilSaludos,
Adhemar Cu茅llar
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.
Muchas gracias Cristobal.
Saludos,
Adhemar Cu茅llar