08.04.2011, 21:42 | #1 (permalink) |
Member
Регистрация: 24.02.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Create Process
и еще нужно добавить, чтобы выводило: права доступа... Очень прошу помогите с прогой!!! Заранее спасибо!!!! Код:
#undef UNICODE #include <windows.h> #include <stdio.h> #include <string.h> void print_space(int count) { for (int i=0; i<=count; i++) printf(" "); } int process_directory(char *theDir, int& level) { WIN32_FIND_DATA ffd; LARGE_INTEGER filesize; char szDir[MAX_PATH]; size_t length_of_arg; HANDLE hFind = INVALID_HANDLE_VALUE; DWORD dwError=0; strncpy_s(szDir, theDir, MAX_PATH); strncat_s(szDir, "\\*", MAX_PATH); // Find the first file in the directory. hFind = FindFirstFile(szDir, &ffd); if (INVALID_HANDLE_VALUE == hFind) return dwError; do { // пропускаем каталоги . и .. if ((strncmp(ffd.cFileName, ".", MAX_PATH) == 0) || (strncmp(ffd.cFileName, "..", MAX_PATH) == 0) ) { if (FindNextFile(hFind, &ffd) != 0) continue; else break; } if (ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { print_space(level); printf("+--"); printf(" %s <DIR>\n", ffd.cFileName); level++; process_directory(ffd.cFileName, level); } else { print_space(level); printf("|--"); filesize.LowPart = ffd.nFileSizeLow; filesize.HighPart = ffd.nFileSizeHigh; printf(" %s %ld bytes\n", ffd.cFileName, filesize.QuadPart); } } while (FindNextFile(hFind, &ffd) != 0); level--; dwError = GetLastError(); FindClose(hFind); return dwError; } int main(int argc, char *argv[]) { if (argc == 1) { printf("wrong run. use program <path>\n"); return 1; } int level = 0; process_directory(argv[1], level); return 0; } |
08.04.2011, 21:42 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Возможно, ваш вопрос уже получил решение на форуме Unable to create OpenGL screen Синий экран Windows Logon Process |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|