Fonction ouvrir de windows

k3pcrew Messages postés 7 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 22 juin 2005 - 17 mai 2004 à 17:14
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 - 17 mai 2004 à 18:29
Je travail sur un prog qui permet de lire des vidéos en utilisant le module média player , et pour choisir la vidéo je dois taper tout le chemin d'accès au fichier . Je voudrai bien que qqu'un m'explique comment faire pour que quand je clic sur un boutton il m'ouvre la fenetre ouvrir de windows et que je puisse récuperer le chemin dans mon edit box !

merci d'avance pour l'aide que vous m'apporterez

6 réponses

hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
17 mai 2004 à 17:22
regarde du coté de GetOpenFileName
0
k3pcrew Messages postés 7 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 22 juin 2005
17 mai 2004 à 17:26
Le probleme est que je ne sais pas comment lancer la fenetre ouvrir .
0
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
17 mai 2004 à 17:42
msdn dit :

OPENFILENAME ofn;       // common dialog box structure
char szFile[260];       // buffer for file name
HWND hwnd;              // owner window
HANDLE hf;              // file handle

// Initialize OPENFILENAME
ZeroMemory(&ofn, sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = hwnd;
ofn.lpstrFile = szFile;
ofn.nMaxFile = sizeof(szFile);
ofn.lpstrFilter = "All\0*.*\0Text\0*.TXT\0";
ofn.nFilterIndex = 1;
ofn.lpstrFileTitle = NULL;
ofn.nMaxFileTitle = 0;
ofn.lpstrInitialDir = NULL;
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;

// Display the Open dialog box. 

if (GetOpenFileName(&ofn)==TRUE) 
    hf = CreateFile(ofn.lpstrFile, GENERIC_READ,
        0, (LPSECURITY_ATTRIBUTES) NULL,
        OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,
        (HANDLE) NULL);

0
k3pcrew Messages postés 7 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 22 juin 2005
17 mai 2004 à 17:50
merci je vais essayer
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
k3pcrew Messages postés 7 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 22 juin 2005
17 mai 2004 à 18:07
bon ben apparement j'y arrive pas parce que la fenetre ne s'ouvre pas ! je précise que j'utilise visual C++ et quant je lance avec un breakpoint il me montre qu'il bloque sur
"if (GetOpenFileName(&ofn)==TRUE) " et donc je ne vois pas la fenetre . Sinon après comment on récupere le chemin d'accès ?
0
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
17 mai 2004 à 18:29
c'est que ca s'est mal initialisé (probablement les parametres de la structure)
pour avoir plus de précisions :
if (GetOpenFileName(&ofn)==TRUE) 
hf = CreateFile(ofn.lpstrFile, GENERIC_READ,0, (LPSECURITY_ATTRIBUTES) NULL,OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,(HANDLE) NULL);
else
{
LPVOID lpMsgBuf; 
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(), 0, (LPTSTR) &lpMsgBuf, 0, NULL); 
MessageBox(NULL,(LPCTSTR)lpMsgBuf,"",MB_ICONSTOP); 
LocalFree( lpMsgBuf ); // Free the buffer. 



mais je pense qu'en changeant ca, ca devrait aller
char szFile[260]; // buffer for file name
HWND hwnd; // owner window

par (exemple)
char szFile[260]="";
HWND hwnd=NULL;
0
Rejoignez-nous