Salut

avec le code qui suit je n'obtient que le nom d'un fichier
je voudrait aussi le path, mais je n'y arrive pas?



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 
program test;
 
 uses
   commdlg, Windows;
 
 
{=-=-=-=-=-  -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
 
function OpenSave(HWND :THandle;
                  Titre, Filtre, CheminDepart : string;
                  Sauve :Boolean):string;
 var OpenFileName : TOpenFileName;
     TempSTR : array[0..MAX_PATH] of char;
  begin
     FillChar(OpenFileName, sizeof(TOpenFileName), 0);
 
    OpenFileName.lStructSize            := sizeof(OpenFileName);
    OpenFileName.hwndOwner              := HWND;
    OpenFileName.lpstrFilter            := Pchar(Filtre);
    OpenFileName.nFilterIndex           := 1;
    OpenFileName.lpstrFile              := TempSTR;
    OpenFileName.nMaxFile               := 255;
    OpenFileName.lpstrFileTitle         := TempSTR;
    OpenFileName.nMaxFileTitle          := 255;
    OpenFileName.lpstrInitialDir        := Pchar(CheminDepart);
    OpenFileName.lpstrTitle             := Pchar(Titre);
 
 
    if sauve Then OpenFileName.flags := OFN_EXPLORER
    else OpenFileName.flags := OFN_FILEMUSTEXIST or OFN_PATHMUSTEXIST or OFN_EXPLORER;
 
 
  If GetOpenFileName(OpenFileName) Then  Result :=  OpenFileName.lpstrFile
  Else Result := '';
 
end;
 
 
{=-=-=-=-=-  -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
 
 
  Var FILTRE, s :string;
 
  begin
 
 
    Filtre := 'Fichiers Texte  (*.txt)' + #0 + '*.txt' + #0;
 
 
     s := OpenSave(0, 'Ouvrez un fichier texte', Filtre, 'c:\', false);
 
    if s <> '' Then MessageBoxA(0, pchar(s), '', 0);
 
end.