Bonjour,

Je souhaite pouvoir utiliser la fenêtre "ouvrir les fichier" de l'API Windows.
Bon jusque la tout marche correctement.

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
#include <windows.h>

int WinMain (
                HINSTANCE cetteInstance,
                HINSTANCE precedenteInstance,
                LPSTR lignesDeCommande,
                int modeDAffichage
            )
{


//MessageBox(NULL, TEXT("Hello World"), TEXT("Hello World"), MB_OK);
    //Structure nécessaire à la boîte de dialogue d'ouverture
    OPENFILENAME toGetFileName;
    //Variable qui va recevoir le chemin de la musique
    char filePath[MAX_PATH] = "";

    //Remplissage de la structure
    ZeroMemory(&toGetFileName, sizeof(OPENFILENAME));
    toGetFileName.lStructSize = sizeof(OPENFILENAME);
    toGetFileName.hwndOwner = NULL;
    toGetFileName.lpstrFile = filePath;
    toGetFileName.nMaxFile = MAX_PATH;
    //Avec un filtre de fichiers audio
   // toGetFileName.lpstrFilter = "Audio File\0*.mp3;*.wav;*.ogg;*.wma\0\0";
    toGetFileName.nFilterIndex = 1;
    toGetFileName.Flags =  OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_ALLOWMULTISELECT;

        //Si l'utilisateur clique sur "Ouvrir"
    if(GetOpenFileName(&toGetFileName) == TRUE)
    {
        //Copier le chemin récupéré dans le chemin de la musique
        MessageBox(NULL, filePath , "Hello World", MB_OK);

    }
       return 0;
}
Ensuite j'ai voulu pouvoir utiliser la fonction de choix multiple, et c'est la que ca commence à déraper, enfin je pense.

En effet, quand j'ajoute le flags OFN_ALLOWMULTISELECT, la fenetre change, et je me retrouve avec la fenêtre parcourir de windows 3.1.

Donc est-ce normal?
Et surtout, est ce qu'il est possible de conserver de celle de vista?

Merci d'avance.