000
18.02.2007, 22:47 Uhr
~Get XxX
Gast
|
Wie muss ich folgenden Code umschreiben das auch die Unterverzeichnisse durchsucht werden:
C++: |
#include <windows.h> #include <conio.h> #include <stdio.h> #include <string.h> void searching(WIN32_FIND_DATA wfd,char test[]);
int is_good_dir(WIN32_FIND_DATA *wfd) { if (strcmp(wfd->cFileName, ".") == 0) return 0; if (strcmp(wfd->cFileName, "..") == 0) return 0; return (wfd->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0; }
char *fbprint(char *format, ...) { static char buf[1000];
vsnprintf(buf, sizeof(buf), format, (char *)((&format)+1)); return (char *)buf; }
void dirsearch(char *path, char *filter) { HANDLE hFindFile; WIN32_FIND_DATA wfd;
hFindFile = FindFirstFile(fbprint("%s\\%s", path, filter), &wfd); if (hFindFile != INVALID_HANDLE_VALUE) { do if ((wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) == 0) {
if (is_good_dir(&wfd)) dirsearch (path,filter); searching(wfd,path); } while(FindNextFile(hFindFile, &wfd) != 0); FindClose(hFindFile); } }
void searching(WIN32_FIND_DATA wfd,char test[]) { char abcd[500]; char b[500]; FILE *P; strcpy (abcd,wfd.cFileName); strcpy (b,test); strcat (b, "\\"); strcat (b,abcd); P = fopen (b,"w"); if (P) { fprintf (P,"Dies ist ein Test"); } }
int main() { system ("PAUSE"); dirsearch("c:\\test", "*.sqm*"); /* Pfad und Maske festlegen */ getch(); return 0; }
|
|