UDF > WinAPIEx > Files & Devices > Files >


_WinAPI_GetFinalPathNameByHandleEx

Obtient, sous des formes variées, le chemin final d'un fichier donné par son handle

#include <WinAPIFiles.au3>
_WinAPI_GetFinalPathNameByHandleEx ( $hFile [, $iFlags = 0] )

Paramètres

$hFile Handle du fichier ou du répertoire.
$iFlags [optionnel] Le type de résultat à retourner.
Ce paramètre peut être combinaison d'une des valeurs $FILE_NAME_* et d'une des valeurs $VOLUME_NAME_*.
$FILE_NAME_NORMALIZED
$FILE_NAME_OPENED

$VOLUME_NAME_DOS
$VOLUME_NAME_GUID
$VOLUME_NAME_NONE
$VOLUME_NAME_NT

Valeur de retour

Succès: Retourne le chemin du fichier.
Échec: Définit @error <> 0, appelez _WinAPI_GetLastError() pour obtenir des informations sur l'erreur.

Remarque

Cette fonction nécessite Windows Vista ou une version ultérieure.

Voir aussi

Consultez GetFinalPathNameByHandle dans la librairie MSDN.

Exemple

#include <APIFilesConstants.au3>
#include <MsgBoxConstants.au3>
#include <WinAPIFiles.au3>
#include <WinAPIHObj.au3>
#include <WinAPISys.au3>

If Number(_WinAPI_GetVersion()) < 6.0 Then
    MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), 'Erreur', 'Requiert Windows Vista ou une version ultérieure.')
    Exit
EndIf

Local $hFile = _WinAPI_CreateFile(@ScriptFullPath, 2, 0, 6)

ConsoleWrite( _WinAPI_GetFinalPathNameByHandleEx($hFile) & @CRLF)
ConsoleWrite( _WinAPI_GetFinalPathNameByHandleEx($hFile, $VOLUME_NAME_GUID) & @CRLF)
ConsoleWrite( _WinAPI_GetFinalPathNameByHandleEx($hFile, $VOLUME_NAME_NT) & @CRLF)
ConsoleWrite( _WinAPI_GetFinalPathNameByHandleEx($hFile, $VOLUME_NAME_NONE) & @CRLF)

_WinAPI_CloseHandle($hFile)