Obtient les dates/heures de cr�ation, d'acc�s et de modification d'un fichier
#include <Date.au3>
_Date_Time_GetFileTime ( $hFile )
$hFile | Handle vers le fichier o� les dates/heures seront r�cup�r�s. Le handle de fichier doit avoir �t� cr�� � l'aide de la fonction CreateFile avec le droit d'acc�s GENERIC_READ. |
Les dates de cr�ation et du dernier acc�s ne peuvent �tre enregistr�es sur tous les syst�mes de fichiers et l'enregistrement de celles-ci peut ne pas se faire de la m�me mani�re.
Par exemple, en FAT, la date de cr�ation a une pr�cision de 10 millisecondes, la date de modification a une pr�cision de 2 secondes, et la date du dernier acc�s a une pr�cision de 1 jour (c'est bien �a, la date du dernier acc�s). Par cons�quent, la fonction _Date_Time_GetFileTime() peut ne pas retourner les m�mes informations d'horodatage du fichier pr�alablement d�finies � l'aide de _Date_Time_SetFileTime().
Les d�lais du syst�me de fichiers NTFS mettent � jour le dernier temps d'acc�s pour un fichier par l'ajout d'une heure apr�s le dernier acc�s.
$tagFILETIME, _Date_Time_SetFileTime
#include <Date.au3> #include <GUIConstantsEx.au3> #include <WinAPIError.au3> #include <WinAPIFiles.au3> #include <WinAPIHObj.au3> #include <WindowsConstants.au3> Global $g_idMemo Example() Func Example() Local $hFile, $tFile, $aTime Local $sTempFile = @TempDir & "\Test.xyz" ; Cr�e la GUI GUICreate("Temps", 400, 300) $g_idMemo = GUICtrlCreateEdit("", 2, 2, 396, 296, $WS_VSCROLL) GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New") GUISetState(@SW_SHOW) ; Cr�er un fichier de test et d�finit les dates du fichier $hFile = _WinAPI_CreateFile($sTempFile, 1) If $hFile = 0 Then _WinAPI_ShowError("Impossible de cr�er le fichier") $tFile = _Date_Time_EncodeFileTime(@MON, @MDAY, @YEAR, @HOUR, @MIN, @SEC) _Date_Time_SetFileTime($hFile, $tFile, $tFile, $tFile) _WinAPI_CloseHandle($hFile) ; Lit les dates du fichier $hFile = _WinAPI_CreateFile($sTempFile, 2) If $hFile = 0 Then _WinAPI_ShowError("Impossible d'ouvrir le fichier") $aTime = _Date_Time_GetFileTime($hFile) _WinAPI_CloseHandle($hFile) MemoWrite("Cr�� . : " & _Date_Time_FileTimeToStr($aTime[0])) MemoWrite("Acc�d� . : " & _Date_Time_FileTimeToStr($aTime[1])) MemoWrite("Modifi� . : " & _Date_Time_FileTimeToStr($aTime[2])) ; Boucle jusqu'� ce que l'utilisateur quitte. Do Until GUIGetMsg() = $GUI_EVENT_CLOSE FileDelete($sTempFile) EndFunc ;==>Example ; �crit une ligne dans le contr�le m�mo Func MemoWrite($sMessage) GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1) EndFunc ;==>MemoWrite