Ĺadny brzuch
mam taki kod unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
ListBox1: TListBox;
Edit1: TEdit;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
procedure Szukaj(katalog: string; const plik, roz: ShortString);
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Szukaj(katalog: string; const plik, roz: ShortString);
const
ext = '*.*';
var
SR: TSearchRec;
fname: string;
begin
if katalog[length(katalog)] <> '\' then
katalog := katalog + '\'; //dopisujemy znak '\' jesli go nie ma
if FindFirst(katalog + ext, faAnyFile, SR) <> 0 then
EXIT; //jesli nie ma plików opuszczamy procedurę
while FindNext(SR) = 0 do
begin
if ((sr.Attr and faDirectory) <> 0) and ( SR.Name <> '..') then
szukaj(katalog + SR.Name + '\', plik, roz) //jesli plik jest katalogiem to szukamy w tym katalogu
else
begin
{kolejno warunki: jesli nazya jest różna od '..' i '.' oraz rozszerzenie zgadza sie temu które podalismy a takze nazwa pliku z rozszerzeniem jest równa aktualnie sprawdzanemu plikowi}
if (SR.Name <> '..') and (Sr.Name <> '.') and
(lowercase(ExtractFileExt(SR.Name)) = '.' + roz) and
(lowercase(plik + '.' + roz) = lowercase(extractfilename(SR.Name))) then
ListBox1.Items.Add(katalog + SR.Name);
end;
Application.ProcessMessages;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Szukaj('E:\', edit1.text, edit2.text);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
end;
end. chciałbym zmienić dwie żeczy 1. zamiast wpisywać nazwy pliku do edit1 stworzylem plik tekstowy i w nim są wpisane wyrazy w taki sposób np.
mario
firefox
i zeby program brał te nazwy do wyszukania z pliku a nie po wpisaniu. druga żecz to to że do edit2 trzeba wpisać rozszeżenie i chodzi oto żeby tak zrobić żeby nietrzeba było rozszeżenia wpisywać tylko żeby szukał kazdego. pomocy
Tak to jest jak się przpisuje gotowca ...
Załaduj plik zrób jakąś pentelke np. while ... do.
A co do drugiej sprawy to wywal ", roz: ShortString" z argumentów, a wszystkie zmienne roz zamień na .* wsio.
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
mario
firefox
i zeby program brał te nazwy do wyszukania z pliku a nie po wpisaniu. druga żecz to to że do edit2 trzeba wpisać rozszeżenie i chodzi oto żeby tak zrobić żeby nietrzeba było rozszeżenia wpisywać tylko żeby szukał kazdego. pomocy
Tak to jest jak się przpisuje gotowca ...
Załaduj plik zrób jakąś pentelke np. while ... do.
A co do drugiej sprawy to wywal ", roz: ShortString" z argumentów, a wszystkie zmienne roz zamień na .* wsio.