Шустрый

Профиль
Группа: Участник
Сообщений: 85
Регистрация: 30.5.2005
Где: г. Ростов-на-Дону
Репутация: нет Всего: нет
|
Послезавтра уезжаю в командировку, а сразу после командировки на сессию. Публикую окончательный вариант моей программы и кусочек моей курсовой работы  Код | //---------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //---------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; void TestFile(char* delpath,char* filename) { AnsiString lowname = AnsiLowerCase(AnsiString(filename)); filename = lowname.c_str(); AnsiString ext = AnsiStrRScan(filename,'\.'); if(ext==".exe") { AnsiString name = ChangeFileExt(filename, ""); if(name!="turbo") { if(FileExists(delpath+ChangeFileExt(filename, ".pas")) || FileExists(delpath+ChangeFileExt(filename, ".bas")) || FileExists(delpath+ChangeFileExt(filename, ".for")) || FileExists(delpath+ChangeFileExt(filename, ".c"))) Form1->ListBox1->Items->Add(AnsiString(delpath)+filename); } } if(ext==".bak" || ext==".$$$") Form1->ListBox1->Items->Add(AnsiString(delpath)+filename); } void FindDir(char* path,char* mask) { WIN32_FIND_DATA wfd; HANDLE hfound; char newpath[MAX_PATH]; char fpath[MAX_PATH]; char delpath[MAX_PATH]; strcpy(fpath,path); strcat(fpath,"\\"); strcpy(delpath,fpath); strcat(fpath,mask); if((hfound=FindFirstFile(fpath,&wfd))!=INVALID_HANDLE_VALUE) { if(!(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)&&strcmp(wfd.cFileName,"..")&&strcmp(wfd.cFileName,".")) { //нашли первый файл в папке path TestFile(delpath,wfd.cFileName); } while(FindNextFile(hfound,&wfd)) { if(!(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)&&strcmp(wfd.cFileName,"..")&&strcmp(wfd.cFileName,".")) { //нашли ещё файл в папке path TestFile(delpath,wfd.cFileName); } } } FindClose(hfound); //поиск файлов закончили, теперь ищем подпапки strcpy(fpath,path); strcat(fpath,"\\*.*"); if((hfound=FindFirstFile(fpath,&wfd))!=INVALID_HANDLE_VALUE) { if((wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)&&strcmp(wfd.cFileName,"..")&&strcmp(wfd.cFileName,".")) { strcpy(newpath,path); strcat(newpath,"\\"); strcat(newpath,wfd.cFileName); FindDir(newpath,mask); //Рекурсивный вызов } while(FindNextFile(hfound,&wfd)) { if((wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)&&strcmp(wfd.cFileName,"..")&&strcmp(wfd.cFileName,".")) { strcpy(newpath,path); strcat(newpath,"\\"); strcat(newpath,wfd.cFileName); FindDir(newpath,mask); //Рекурсивный вызов } } } } //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { Form1->ListBox1->Clear(); //Очистка поля вывода AnsiString drive = AnsiString(DriveComboBox1->Drive) + ":"; //Запись имени диска в виде «Диск:» char* path = drive.c_str(); char* mask = "*.*"; FindDir(path,mask); //Вызов функции поиска и вывода файлов в директории } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { for (int i = 0; i < ListBox[b]1->Items->Count; i++)[quote][quote] {[b] if (ListBox1->Selected[i])DeleteFile(ListBox1->Items->Strings[i]); } ListBox1->DeleteSelected(); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { ListBox1->SelectAll(); } //---------------------------------------------------------------------------
|
Цитата | Заключение Разработка программы началась 30 мая 2005 года. Для написания данной программы использовался Borland С++ Builder 6. Автор впервые пользовался данной средой разработки, в связи с чем возникало множество вопросов. Основными вопросами были: связь визуальных компонентов на форме между собой; связь визуальных компонентов на форме с пользовательскими функциями, а так же преобразование типов данных, которые компилятор не может преобразовать автоматически. Автор благодарит за помощь в поиске ответов, на ставящиеся компилятором вопросы, и написании данной программы, своего друга Дубинина Антона Сергеевича, студента III курса РГПУ и всех участников форума программистов www.forum.vingrad.ru, которые нашли время чтобы ответить на мои вопросы. | Особую благодарность выражаю _hunter, Akina, Duster, gepard!!!
|