|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.04.2008, 13:03 | #1 |
Пользователь
Регистрация: 03.04.2008
Сообщений: 50
|
Не работает поиск файлов помогите
хочу переделать данную функцию для выбора файлов из папки, но она не работает исправте, если есть ошибку?
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Masks; type TForm1 = class(TForm) ListBox1: TListBox; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); type TSearchRec = record Time: Integer; Size: Integer; Attr: Integer; name: TFileName; ExcludeAttr: Integer; FindHandle: THandle; FindData: TWin32FindData; end; var F: TSearchRec; Path: string; Attr: Integer; begin {Искать все файлы в заданной директории с расширение .*} Path := 'c:\*.*'; Attr := faanyfile; FindFirst(Path, Attr, F); // В данном месте выдает ошибку {Если хотя бы один файл найден, то продолжить поиск} if F.name <> '' then begin ListBox1.Items.Add(F.name); {Добавление в TListBox имени найденного файла} while FindNext(F) = 0 do ListBox1.Items.Add(F.name); end; FindClose(F); end; end. |
12.04.2008, 13:13 | #2 |
Участник клуба Подтвердите свой е-майл
Регистрация: 14.12.2007
Сообщений: 1,434
|
неправильно сделано, нужно
var r:integer; .............. r:=FindFirst(Path, Attr, F); while r=0 do //если нашли то возвращает 0, если нет то 1 begin ................. end;
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
|
12.04.2008, 19:30 | #3 |
Пользователь
Регистрация: 03.04.2008
Сообщений: 50
|
Проблема в том, что ругается
на этой строке FindFirst(Path, Attr, F); // В данном месте выдает ошибку, Выводит вот это [Error] Unit12.pas(80): Types of actual and formal var parameters must be identical а конкретно на < F >? |
12.04.2008, 19:58 | #4 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Вы нам привели код Unit1, а ругается у вас на Unit12.
Дальше: procedure TForm1.Button1Click(Sender: TObject); type TSearchRec = record Time: Integer; Size: Integer; Attr: Integer; name: TFileName; ExcludeAttr: Integer; FindHandle: THandle; FindData: TWin32FindData; end; var F: TSearchRec; Кто вас научил этой глупости? Немедленно уберите (красное, если непонятно). Последний раз редактировалось mihali4; 12.04.2008 в 20:02. |
13.04.2008, 09:44 | #5 |
Пользователь
Регистрация: 03.04.2008
Сообщений: 50
|
unit1,unit12 пробные программы, а действие одно и ошибка одинакова.
Я брал из теории, а там необходимо обьявлять написано, а теперь удолил и все работает. Спасибо! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поиск *.csv и *.xls файлов | Len@ | Microsoft Office Excel | 18 | 28.07.2008 22:31 |
Поиск файлов | LeoN | Общие вопросы Delphi | 5 | 25.11.2007 22:54 |
поиск файлов | KORN | Компоненты Delphi | 3 | 12.10.2007 05:42 |
Поиск файлов | necky | Общие вопросы Delphi | 10 | 31.08.2007 00:27 |