Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

проблема с FindFirst [D7, WinXP]


Quattro ©   (2005-03-14 20:29:00) 

Здравствуйте!....подскажите палуйста, в чем трабл??....пытаюсь сделат ьобычный поисковик файлов на компе и при использовании функции FindFirst выскакивает вот такая вот ошибка компиляции
[Error] Unit1.pas(43): Types of actual and formal var parameters must be identical.....сам код -ниже
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TSearchRec = record
 Time: Integer;
 Size: Integer;
 Attr: Integer;
 Name: TFileName;
 ExcludeAttr: Integer;
 FindHandle: THandle;
 FindData: TWin32FindData;
  end;
 TForm1 = class(TForm)
   Edit1: TEdit;
   Button1: TButton;
   Edit2: TEdit;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
sr:TSearchRec;
Attr: Integer;
begin
Attr:=faDirectory;
if FindFirst(Edit1.Text,Attr,sr) = 0 then
Edit2.Text:= IntToStr(sr.Size);
FindClose(sr);
end;

end.


Quattro   (2005-03-14 23:32:00) [1]

всем спасибо за советы...и действительно заворкало!!!


begin...end   (2005-03-14 20:45:00) [2]

Забавно


Fay   (2005-03-14 20:45:00) [3]

я тоже 8)


Virgo_Style   (2005-03-14 20:44:00) [4]

P.S. А в следующий раз пиши, на какой строке ошибка возникает.


P.N.P.   (2005-03-14 20:44:00) [5]

>Virgo_Style ©   (14.03.05 20:43) [4]
Точно!
и как я проглядел :)


Virgo_Style   (2005-03-14 20:43:00) [6]


>type
> TSearchRec = record
> Time: Integer;
> Size: Integer;
> Attr: Integer;
> Name: TFileName;
> ExcludeAttr: Integer;
> FindHandle: THandle;
> FindData: TWin32FindData;
>   end;

Выкинь это сейчас же :-) Эта структура определена в SysUtils, и именно ее переопределение и приводит к ошибке компиляции. Проверено экспериментально.


Fay   (2005-03-14 20:40:00) [7]

SysUtils.FindClose(sr); ?


P.N.P.   (2005-03-14 20:34:00) [8]

Здесь все в порядке, видимо ошибка где-то далее.


begin...end   (2005-03-14 20:34:00) [9]

В приведённом коде ошибок не видно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо