Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2088 connectés 

 


Dernière réponse
Sujet : [VC++] GetOpenFileName()
Carbon_14

Godbout a écrit a écrit :

Au niveau de l'instance tu dois pas filer l'instance de l'application ?  




 
L'instance de l'application est obligatoire quand on hooke la feuille de dialogue. Si on hooke pas, NULL convient très bien.


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Carbon_14

Godbout a écrit a écrit :

Au niveau de l'instance tu dois pas filer l'instance de l'application ?  




 
L'instance de l'application est obligatoire quand on hooke la feuille de dialogue. Si on hooke pas, NULL convient très bien.

chrisbk ton filter me semble pas bon
 
ofn.lpstrFilter = "Tous\0*.*\0Images Bitmap\0*.BMP\0";
 
il faut que ca se finisse par un double \0 (\0\0 donc)
 
dans tous les ca vala un bout de code qui marchez chez moi :
 

Code :
  1. static TCHAR strInitialDir[512];
  2. static TCHAR strFileName[512];
  3. static TCHAR strCurrentName[512];
  4. OPENFILENAME ofnExe = { sizeof(OPENFILENAME), hWnd, 0,
  5.         "executable Files (*.Exe)\0*.exe\0\0",
  6.         NULL, 0, 1, strCurrentName, 512, strFileName, 512,
  7.         strInitialDir, "Open",OFN_EXPLORER|OFN_FILEMUSTEXIST, 0, 1,
  8.         "exe", 0, NULL, NULL };
  9. GetOpenFileName( &ofnExe );

la viper CDialogFile File();
File.Open(_les_options_);
CString strPath = File.GetPathName();
 
 
pkoi se prendre le choux ?? autant utiliser MFC!
deathsharp chez moi aussi ca plante :??:  
meme les exemples de MSDN et pi les "vieux" exemple fourni avec le bookin de Petzold ( qui fonctionnait bien )
 
ca m'interresse tout ca...
godbout Au niveau de l'instance tu dois pas filer l'instance de l'application ?
VisualC++ Euh si tu es sous VC++ et que tu utilises les MFC, un petit CFileDialog non ?
R3g Et ben, personne trouve ?
 
Bon, ben up alors !
R3g Je veux faire une fonction qui permet de recuperer un nom de fichier. J'ai fait ca :
......
    OPENFILENAME ofn;
    char szFileName[260];
    char szFileTitle[80];
    HWND hwnd = m_hWnd;
     
     
    ZeroMemory(&ofn, sizeof(OPENFILENAME));
    ofn.lStructSize = sizeof(ofn);
    ofn.hwndOwner = hwnd;
    ofn.hInstance = NULL;
    ofn.lpstrFile = szFileName;
    ofn.nMaxFile = sizeof(szFileName);
    ofn.lpstrFilter = "Tous\0*.*\0Images Bitmap\0*.BMP\0";
    ofn.lpstrTitle = "Ouvrir une image...";
    ofn.nFilterIndex = 1;
    ofn.lpstrFileTitle = szFileTitle;
    ofn.nMaxFileTitle = sizeof(szFileTitle);
    ofn.lpstrInitialDir = NULL;
    ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY | OFN_NOCHANGEDIR;
    ofn.lpstrDefExt = "bmp";
 
    if (GetOpenFileName(&ofn)){
       .......
 
Ca compile, mais la boite de dialogue ne s'affiche pas, et  
CommDlgExtendedError() renvoie CDERR_INITIALIZATION.
 
J'ai rien trouve dans l'aide pour expliquer cette erreur, alors si quelqu'un avait une idee....
 
Merci d'avance.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)