Me suis trompé! sOpenFile c'est OPENFILENAME
Voici un bout de la structure (j'ai du trouver ça sur ce site d'ailleur)
OPENFILENAME sOpenFile;
char szPath[MAX_PATH + 1];
BOOL bRet;
HWND hCtrl;
int i;
char* buff = NULL;
szPath[0] = '\0';
//Initialise la structure
ZeroMemory(&sOpenFile,sizeof(OPENFILENAME));
sOpenFile.lStructSize = sizeof(OPENFILENAME);
sOpenFile.hwndOwner = hParent;
// choix des extensions
if(extension == 0)
sOpenFile.lpstrFilter = "File (*.*)\0*.*\0\0";
if(extension == 1)
sOpenFile.lpstrFilter = "Bitmap (*.bmp)\0*.bmp\0\0";
sOpenFile.nFilterIndex = 1;
sOpenFile.lpstrFile = szPath;
sOpenFile.nMaxFile = MAX_PATH + 1;
sOpenFile.Flags = OFN_EXPLORER | OFN_PATHMUSTEXIST |
((bOpen)? OFN_FILEMUSTEXIST : OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT);
...
Mon but est d'avoir en paramètre l'extension qui va dans sOpenFile.lpstrFilter = "File (*.*)\0*.*\0\0";