Option Explicit
Private Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" ( _
ByVal lpFile As String, _
ByVal lpDirectory As String, _
ByVal lpResult As String) As Long
Private Const MAX_FILENAME_LEN = 260
Function TrouveExecutable(FileFullName As String) As String
Dim hdl As Long
Dim Buffer As String
Buffer = String(MAX_FILENAME_LEN, 32)
hdl = FindExecutable(FileFullName, vbNullString, Buffer) '
If hdl > 32 Then
TrouveExecutable = Left(Buffer, InStr(Buffer, Chr$(0)) - 1)
End If
End Function