1 #include <windows.h>
2 #include <iostream>
3 #include <fstream>
4
5 using namespace std;
6
7 DWORD ListDir(LPSTR szPath)
8 {
9 WIN32_FIND_DATA ListFile;
10 HANDLE hListFile;
11 char szFilePath[MAX_PATH];
12 ofstream MenuTxt("Menu.txt");
13
14 lstrcpy(szFilePath, szPath);
15 lstrcat(szFilePath, "\\*");
16 hListFile = FindFirstFile(szFilePath, &ListFile);
17 char *DirArray[1024];
18 int i, j;
19 if(hListFile != INVALID_HANDLE_VALUE)
20 {
21 do
22 {
23 if(lstrcmp(ListFile.cFileName, "..") == 0 || lstrcmp(ListFile.cFileName, ".") == 0)
24 continue;
25
26 if(!(ListFile.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
27 {
28 //cout << "----" << ListFile.cFileName << endl;
29 MenuTxt << "----" << ListFile.cFileName << endl;
30 }
31 else
32 {
33 i = 0;
34 DirArray[i] = ListFile.cFileName;
35 i++;
36 }
37 }while(FindNextFile(hListFile, &ListFile));
38 for(j = 0; j < i - 1; j++)
39 ListDir(DirArray[j]);
40 }
41 FindClose(hListFile);
42 MenuTxt.close();
43 return 0;
44 }
45
46 int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
47 LPSTR lpCmdLine, int nCmdShow)
48 {
49 CHAR szCurPath[MAX_PATH];
50 GetCurrentDirectory(MAX_PATH, szCurPath);
51 ListDir(szCurPath);
52 MessageBox(NULL, "目录文件已创建!", "提示:", MB_OK | MB_ICONEXCLAMATION);
53 return 0;
54 }