begin process at 2012 05 30 11:26:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Fichier & Disque

 > 

recherche fichier code c aidez moi svp


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

recherche fichier code c aidez moi svp

samedi 19 septembre 2009 à 23:27:54 | recherche fichier code c aidez moi svp

zilot2

bonjours et pardonnez mon français , mon code est de rechercher un fichier dans tous les repertoires. voici mon code:

Code C/C++ :

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <dirent.h>
#include <string.h>
char scanforexe( HANDLE ffind, WIN32_FIND_DATA ffdata){
int i;
ffind=FindFirstFile("*.exe*", &ffdata);
i=strcmp("lilo3.exe",ffdata.cFileName);
printf ("The first file found is %s \n", ffdata.cFileName);
while (FindNextFile(ffind, &ffdata) != 0 && (i!=0)) {
printf("the next files are: %s \n",ffdata.cFileName);
i=strcmp("lilo3.exe",ffdata.cFileName) }
if(i==0){printf(" file found ");}
return 0;
char scanfloder(HANDLE ffind ,WIN32_FIND_DATA ffdata,char *dir){
int i,j=strlen(dir);
strcat(dir,"*.*");
printf("%s\n",dir);

scanforexe( ffind, ffdata);

ffind=FindFirstFile("*.*", &ffdata);
printf ("The first floder found is %s \n", ffdata.cFileName);


while (FindNextFile(ffind, &ffdata) != 0 ) {
if (ffdata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{printf("the next floder is : %s \n",ffdata.cFileName);
if(strcmp(ffdata.cFileName,".")!=0 && strcmp(ffdata.cFileName,"..")!=0)
{
for( i=j;i<strlen(dir);i++){
dir[i]='\0';
}
printf("%s\n",dir);
concat(dir,ffdata.cFileName);

SetCurrentDirectory(dir);
strcat(dir,"\\" ) ;
printf("%s\n",dir);
printf("%s\n",ffdata.cFileName);
scanfloder(ffind,ffdata,dir);

}

}
}




FindClose(ffind);
return 0;

}
int main()
{



char *dir1="D:\\" ;
char *dir;
strcpy(dir,dir1);


WIN32_FIND_DATA ffdata;
HANDLE ffind;

SetCurrentDirectory(dir);
scanfloder(ffind,ffdata,dir);
return 0;
}
Code C/C++ :

le probleme mon code ne scan pas tous les dossiers s'il vous plais aidez moi.montrez moi l'erreur et merci.

dimanche 20 septembre 2009 à 18:04:22 | Re : recherche fichier code c aidez moi svp

rt15

Membre Club Administrateur CodeS-SourceS

Salut,

Si tu utilises "*.*" pour chercher les répertoires, tu ne vas effectivement pas aller bien loin. Utilise "*".

dimanche 20 septembre 2009 à 18:06:07 | Re : recherche fichier code c aidez moi svp

rt15

Membre Club Administrateur CodeS-SourceS

Et pense à ".." et ".".

Voilà un bout d'exemple (Qui sera loin de compiler en l'état...):

Code C/C++ :
BOOL RT_API FileSys_EnumDir(TCHAR* lpPath, FILESYS_ENUMDIRPROC lpCallBack)

{
WIN32_FIND_DATA findFileData; /* Information sur les fichiers trouvés */
HANDLE hFind; /* Handle sur la recherche */
TCHAR lpDir[FILESYS_MAX_PATH]; /* Chemin de travail */
BOOL bRes;

bRes = FALSE;

/* Appel de la callback */
if (! lpCallBack(lpPath))
goto the_end;

/* Parcourt récursif */
lstrcpy(lpDir, lpPath);
lstrcat(lpDir, _T("\\*"));
hFind = FindFirstFile(lpDir, &findFileData);
if (hFind == INVALID_HANDLE_VALUE)
{
if (GetLastError() == ERROR_FILE_NOT_FOUND)
bRes = TRUE;
goto the_end;
}

do
{
if (findFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
if (lstrcmp(_T("."), findFileData.cFileName) &&
lstrcmp(_T(".."), findFileData.cFileName))
{
lstrcpy(lpDir, lpPath);
lstrcat(lpDir, _T("\\"));
lstrcat(lpDir, findFileData.cFileName);
if (! FileSys_EnumDir(lpDir, lpCallBack))
goto the_end;
}
}
while (FindNextFile(hFind, &findFileData));
FindClose(hFind);

/* Vérification que l'on est sorti de le la boucle */
/* car il n'y a plus de fichiers. */
if (GetLastError() == ERROR_NO_MORE_FILES)
bRes = TRUE;

the_end:
return bRes;
}



Cette discussion est classée dans : code, dir, cfilename, ffdata, ffind


Répondre à ce message

Sujets en rapport avec ce message

chercher l'emplacement d'un fichier en c [ par zilot2 ] Bonjour,et pardonnez mon francais mon but est de faire un programme en c qui cherche l'emplacement d'un fichier executable par exemple et retourne son help :p [ par habib1919 ] bonjour,je suis un débutant en c++,je dois faire un projet:interface graphique permettant le choix d une image et d un filtre parmis 4 filtre(gaussien erreur embetante [ par habib1919 ] bonjour,j utilise la bibliotheque opencv en c++,et à chaque que je veux compiler un code avec code blocs vista m affiche une erreur que j ai pas pu la comprendre code en c++ [ par ulysse00 ] salut tout le monde je n'arrive pas à comprendre ce lignes des codes qui peut m'aider à comprendre je suis débutant en c ++ et si vous avez des lien problème avec le backtracking (sudoku) [ par anoubest ] Bonjour tt le monde, g a écrire un code pour résoudre un sudoku. on suppose ke la grille en entrée est un tableau de 9*9 chiffres entre 0 et 9 (0 pr l Trainer VC++ [ par KesslerVanDoom ] Bonjour à toutes (oui les femmes qui aiment l'informatique existent !) et à tous ! Voilà mon problème : J'ai fait un programme en mode "console" qui [C]RegisterServiceProcess [ par don619 ] bonjour, J'utilise Wx-DevCpp et je travail en ce moment sur un TP permettant d'afficher et de cacher un processur et je suis coincée dejà Voila mon Operateur + (string) [ par victorcoasne ] Bonjour, Je voulais faire un code du genre : [code=cpp]#include #include using namespace std; int main() { string test = "a" + "b"; cout


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales