Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

помогите с программой на delphi

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> помогите с программой на delphi
Имя
Сообщение << Старые топики   Новые топики >>
помогите с программой на delphi - 2012-04-22 15:05:59.400000   
kol9di4

Сообщений: 9
Оценки: 0
Присоединился: 2011-07-17 00:25:00.176666
мне надо написать программу на дделфи для поиска txt файлов, впринципе все написано но есть одно но,программа работает исправно но когда задаеш маску поиска, тобиш часть имени для поиска файла, то программа работает некорректно, ищет только в заданной папке, в под папке не ищет..


unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ShlObj, FileCtrl, jpeg, ExtCtrls; type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; ListBox1: TListBox; Label1: TLabel; Button2: TButton; Image1: TImage; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public procedure FindFile(Dir:String); end; var Form1: TForm1; implementation uses Unit2; {$R *.dfm} procedure CallBack(wnd: hWnd; uMsg: UINT; lParam, lpData: LParam) stdcall; begin SendMessage(wnd, BFFM_ENABLEOK, 0, 1); end; procedure TForm1.Button2Click(Sender: TObject); var chosenDirectory : string; slash:string; begin // Просим пользователя выбрать требуемый каталог, стартовый каталог C: if SelectDirectory('Выберите каталог', '\', chosenDirectory) then ShowMessage('Выбранный каталог =&gt; '+chosenDirectory) else ShowMessage('Выбор каталога прервался'); slash:='\'; edit1.text:=chosenDirectory+slash; end; procedure TForm1.FindFile(Dir:String); Var SR:TSearchRec; FindRes,k:Integer; Name,exten:string; begin FindRes:=FindFirst(Dir+'*.*',faAnyFile,SR); While FindRes=0 do begin Name:=Dir; if ((SR.Attr and faDirectory)=faDirectory) and ((SR.Name='.')or(SR.Name='..')) then begin FindRes:=FindNext(SR); Continue; end; if ((SR.Attr and faDirectory)=faDirectory) then begin FindFile(Dir+SR.Name+'\'); FindRes:=FindNext(SR); Continue; end; Name:=Name+SR.Name; k:=length(SR.Name); exten:=copy(SR.Name,k-2,3); if exten='txt' then ListBox1.Items.Add(Name); FindRes:=FindNext(SR); end; FindClose(SR); end; procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Clear; // очистка списка файлов FindFile(Edit1.Text); // поиск файлов с начальными условиями, заданных в Edit1 end; end.
посмотрите и подскажите пожалуйста как исправить
Post #: 1
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> помогите с программой на delphi







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.