UDF > WinAPIEx > Files & Devices > Files >


_WinAPI_GetFileInformationByHandle

Obtient, dans un tableau, les informations de fichier pour le fichier spécifié

#include <WinAPIFiles.au3>
_WinAPI_GetFileInformationByHandle ( $hFile )

Paramètre

$hFile Handle du fichier qui contient les informations à récupérer.

Valeur de retour

Succès: Retourne le tableau contenant les informations suivantes:
[0] - Les attributs de fichier (FILE_ATTRIBUTE_*).
[1] - Structure $tagFILETIME qui spécifie quand un fichier ou un répertoire a été créé.
[2] - Structure $tagFILETIME qui spécifie la dernière fois qu'un fichier a été lu ou écrit.
[3] - Structure $tagFILETIME qui spécifie la dernière fois qu'un fichier a été écrit.
[4] - Le numéro de série du volume qui contient le fichier.
[5] - La taille du fichier.
[6] - Le nombre de liens vers ce fichier.
[7] - L'identifiant unique qui est associé au fichier.
Échec: Définit @error <> 0, appelez _WinAPI_GetLastError() pour obtenir des informations sur l'erreur.

Voir aussi

Consultez GetFileInformationByHandle dans la librairie MSDN.

Exemple

#include <Date.au3>
#include <WinAPIFiles.au3>
#include <WinAPIHObj.au3>

Local $hFile = _WinAPI_CreateFile(@ScriptFullPath, 2, 0, 6)
Local $aInfo = _WinAPI_GetFileInformationByHandle($hFile)
If IsArray($aInfo) Then
    For $i = 1 To 3
        If IsDllStruct($aInfo[$i]) Then
            Local $tFILETIME = _Date_Time_FileTimeToLocalFileTime(DllStructGetPtr($aInfo[$i]))
            $aInfo[$i] = _Date_Time_FileTimeToSystemTime(DllStructGetPtr($tFILETIME))
            $aInfo[$i] = _Date_Time_SystemTimeToDateTimeStr($aInfo[$i])
        Else
            $aInfo[$i] = 'Inconnu'
        EndIf
    Next
    ConsoleWrite('Chemin:         ' & _WinAPI_GetFinalPathNameByHandle($hFile) & @CRLF)
    ConsoleWrite('Attributs:    0x' & Hex($aInfo[0]) & @CRLF)
    ConsoleWrite('Crée le:        ' & $aInfo[1] & @CRLF)
    ConsoleWrite('Dernier accès:  ' & $aInfo[2] & @CRLF)
    ConsoleWrite('Modifié le:     ' & $aInfo[3] & @CRLF)
    ConsoleWrite('N° Volume:      ' & $aInfo[4] & @CRLF)
    ConsoleWrite('Taille:         ' & $aInfo[5] & @CRLF)
    ConsoleWrite('Liens:          ' & $aInfo[6] & @CRLF)
    ConsoleWrite('ID:             ' & $aInfo[7] & @CRLF)
EndIf
_WinAPI_CloseHandle($hFile)