#define _CRT_SECURE_NO_WARNINGS #define _CRT_NON_CONFORMING_SWPRINTFS #include #include #include #include #include using namespace std; void PP(char*dir, char *mask) { while (_rmdir(dir) == -1 ) { //Sleep(1000); cout << " 55asdasd" << endl; if (!_chdir(dir)) { _finddata_t* fileinfo = new _finddata_t; long done = _findfirst(mask, fileinfo); int pass = done; while (pass != -1) { cout << " 1asdasd" << endl; AnsiToOem(fileinfo->name, fileinfo->name); remove(fileinfo->name); if (_rmdir(fileinfo->name) && *(fileinfo->name) != '.') { cout << " 2asdasd" << endl; PP(fileinfo->name, mask); } else { cout << " 3asdasd" << endl; while (pass != -1 || _rmdir(fileinfo->name) != -1) { cout << " 4asdasd" << endl; pass = _findnext(done, fileinfo); remove(fileinfo->name); } /*while (_rmdir(fileinfo->name) != -1) { remove(fileinfo->name); cout << " 4asdasd" << endl; }*/ } pass = _findnext(done, fileinfo); } _chdir("..");// удаление внутри каталог в случее успеха возвращает 0 } /* else { }*/ } } void main() { setlocale(LC_ALL, "rus"); char path[70] = "Z:\\A\\"; char mask[15] = "*.*"; PP(path, mask); cout << endl; system("pause"); }