Enumerer les fichiers d'un dossier

cs_elo29 Messages postés 70 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 26 avril 2006 - 20 avril 2006 à 14:44
cs_elo29 Messages postés 70 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 26 avril 2006 - 21 avril 2006 à 11:53
Bonjour!!

J'utilise le code suivant, pour énumérer les fichiers contenus dans un dossier :

WIN32_FIND_DATA File;
HANDLE hSearch;
BOOL re;

hSearch=FindFirstFile("*.*", &File);
if(hSearch == INVALID_HANDLE_VALUE)
{
return FALSE;
}

re=TRUE;
do
{
/* Traitement */
re = FindNextFile(hSearch, &File);
} while(re);

FindClose(hSearch);
return TRUE;

avec windows.h en entête mais j'ai beaucoup d'erreurs et je voulais savoir si il n'y avait pas une autre bibliothèque à déclarer pour ce genre de code ??

Merci d'avance pour l'aide!!!

7 réponses

cs_elo29 Messages postés 70 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 26 avril 2006
20 avril 2006 à 15:12
Finalement j'utilise un autre code qui fonctionne et qui est le suivant :

#include <windows.h>
#include
using namespace std;

void main(void) {
HANDLE hdlfff;
LPCTSTR dir = "c:\\*.*";
WIN32_FIND_DATA IpFindFileData;
hdlfff = FindFirstFile(dir,&IpFindFileData);
cout<<IpFindFileData.cFileName<<"\n";
while (FindNextFile(hdlfff,&IpFindFileData)) {
cout<<IpFindFileData.cFileName<<"\n";
}
FindClose(hdlfff);
}


Toutefois,je ne sais pas quoi mettre à la place de "c:\\*.*" pour qu'il m'énumère les images.bmp contenues dans un dossier "images" qui se trouve dans mon projet VC++.
Pouvez-vous m'aider svp? Merci
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
20 avril 2006 à 15:17
*.* -> Tous les fichiers, les fichiers bmp ça devient *.bmp
Et pour ton dossier image, change C:\ par ton répertoire...

if(!Meilleur("Joky")) return ERREUR;<
0
goutbouyo Messages postés 429 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 12 janvier 2008
20 avril 2006 à 15:19
Pour le images bmp il faut mettre "*.bmp"
0
cs_elo29 Messages postés 70 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 26 avril 2006
20 avril 2006 à 15:28
Super merci beaucoup!!!!
0

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

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
20 avril 2006 à 21:15
ATTENTION, le handle pourrait être invalide.
On remodèle aussi pour éviter les redondances d'instructions.


WIN32_FIND_DATA wfd;
HANDLE hfind;
hfind = FindFirstFile("c:\\*.*", &wfd);
if(hfind == INVALID_HANDLE_VALUE) return; // IMPORTANT !!!
do {
cout << wfd.cFileName<<"\n";
} while(FindNextFile(hfind, &wfd));
FindClose(hfind);

ciao...
BruNews, MVP VC++
0
cs_elo29 Messages postés 70 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 26 avril 2006
21 avril 2006 à 09:21
Bonjour,

merci pour la rectification.
J'ai une autre petite question... J'utilise un code pour extraire mes images d'une vidéo AVI et les stocker dans une dossier (www.codeproject.com/audio/ExtractAVIFrames.asp). Avec une vidéo de webcam, la vidéo enregistrée est directement en .avi donc pas de souci pour y appliquer le code. En revanche, je travaille avec un kit d'evaluation de camera qui m'enregistre les vidéos sous forme de "fichier" sans extansion. Je renomme donc ce fichier qui est inutilisable comme cela en .avi. J'y applique alors mon programme mais ça ne marche pas, j'ai le message suivant : "Debug Assertion Failed" pour la ligne suivante "ASSERT(pDIB!=NULL);" et je ne comprends pas ce qu'il se passe.

Pouvez-vous m'éclairer là dessus?? Merci
0
cs_elo29 Messages postés 70 Date d'inscription mardi 7 février 2006 Statut Membre Dernière intervention 26 avril 2006
21 avril 2006 à 11:53
C'est bon en fait vaut sûrement mieux convertir complètement le fichier!!
0
Rejoignez-nous