un petit code pas de moi, je l'ai juste amélioré qui permet de choper la date d'un fichier (date de création, accés et modification)
Code : Tout sélectionner
Procedure.s FileTime(fichier$, typedate.l)
Protected TailleFichier.l, HandleFichier.l, DateFichier$, HeureFichier$
HandleFichier = OpenFile(100, fichier$) ; recupère le Handle du fichier avec la fonction OpenFile
If HandleFichier
GetFileTime_(HandleFichier, ct.FILETIME, lat.FILETIME, lwt.FILETIME)
Select typedate
Case 1 ; si typedate = 1, renvoi la date de création
FileTimeToLocalFileTime_(@ct, @lpLocalFileTime.FILETIME) ; pour prendre en compte l'heure d'été et d'hiver
Case 2 ; si typedate = 2, renvoi la date du dernier accès
FileTimeToLocalFileTime_(@lat, @lpLocalFileTime.FILETIME) ; pour prendre en compte l'heure d'été et d'hiver
Default ; si typedate = autre chose, renvoi automatiquement la date de modification
FileTimeToLocalFileTime_(@lwt, @lpLocalFileTime.FILETIME) ; pour prendre en compte l'heure d'été et d'hiver
EndSelect
FileTimeToSystemTime_(@lpLocalFileTime, @st.SYSTEMTIME) ; pour convertir la date dans le format systemtime
DateFichier$ = Space(20)
HeureFichier$ = DateFichier$
GetDateFormat_(2048, 0, @st, "dd'/'MM'/'yyyy", @DateFichier$, 254) ; donne la dte du fichier
GetTimeFormat_(2048, #TIME_FORCE24HOURFORMAT, @st, 0, @HeureFichier$, 254) ; donne l'heure du fichier
datefichier$ = DateFichier$ + " " + HeureFichier$ ; on assemble l'année et l'heure
CloseFile(100)
ProcedureReturn DateFichier$ ; renvoi la date du fichier
Else
ProcedureReturn "?"
EndIf
EndProcedure