24.12.2006, 13:34
общий
это ответ
Здравствуйте, Bingo!
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, CustomizeDlg, Grids, StdCtrls;
type
{TSearchRec = record
Time: Integer; // время создания файла
Size: Integer; // размер
Attr: Integer; // атрибуты файла
Name: TFileName; // имя найденого файла
ExcludeAttr: Integer;
FindHandle: THandle;
FindData: TWin32FindData;
end; }
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Searc:TSearchRec;
hfindfile,i:integer;
begin
// ищем файл
//запускаем поиск
hFindFile := FindFirst(edit1.Text,faAnyFile,Searc); //проверяеться коректность найденого файла
i:=1;
if hFindFile <> INVALID_HANDLE_VALUE then
//если коректно то запускаеться цикл repeat - until.
repeat
stringgrid1.Cols[0].Strings[i]:=inttostr(i);
stringgrid1.RowCount:=i+1;
stringgrid1.rows[i].Add(Searc.Name);
stringgrid1.rows[i].Add(inttostr(Searc.Size) + ‘ байт‘);
stringgrid1.rows[i].Add(formatdatetime(‘hh:mm:ss‘,Searc.Time));
stringgrid1.rows[i].Add(inttostr(Searc.attr));
//здесь вписаны операторы которые нужно выполнить.
i:=1+i;
until (FindNext(Searc) <> 0);
FindClose(Searc);
//закрываем поиск
end;
end.
одной процедуры которая бы выполняла dir я не знаю но вот есть ей замена если;
она выдает имя размер файла в stringrid , если тебе нужны только имена то вутри цикла пропиши только stringgrid1.rows[i].Add(Searc.Name);
если нужно в memo1 то memo1.Lines.Add(Searc.Name) ;
TSearchRec = record запись уже забитая в компилятор ее не нужно писать;