Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

FindFirst   Найти похожие ветки 

 
Green_Templar ©   (2005-06-28 23:12) [0]

Вот не пойму то ли у меня с компилятором что-то не так, то ли я дуплю. Сделал прогу по помощи справки по FindFirst. Тупо не находит ни одного файла в любой директории!!! Блин, карячусь над ней уже второй час. Скачайте её плиз с  кому не в облом!!! Код вот:
[code]unit Unit1;

interface

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

type
 TForm1 = class(TForm)
   Button1: TButton;
   CheckBox1: TCheckBox;
   CheckBox2: TCheckBox;
   CheckBox3: TCheckBox;
   CheckBox4: TCheckBox;
   CheckBox5: TCheckBox;
   CheckBox6: TCheckBox;
   CheckBox7: TCheckBox;
   StringGrid1: TStringGrid;
   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
 sr: TSearchRec;
 FileAttrs: Integer;
begin
 StringGrid1.RowCount := 1;
 if CheckBox1.Checked then
   FileAttrs := faReadOnly
 else
   FileAttrs := 0;
 if CheckBox2.Checked then
   FileAttrs := FileAttrs + faHidden;
 if CheckBox3.Checked then
   FileAttrs := FileAttrs + faSysFile;
 if CheckBox4.Checked then
   FileAttrs := FileAttrs + faVolumeID;
 if CheckBox5.Checked then

   FileAttrs := FileAttrs + faDirectory;
 if CheckBox6.Checked then
   FileAttrs := FileAttrs + faArchive;
 if CheckBox7.Checked then

   FileAttrs := FileAttrs + faAnyFile;

 with StringGrid1 do
 begin
   RowCount := 0;

   if FindFirst(Edit1.Text, FileAttrs, sr) = 0 then

   begin
     repeat
       if (sr.Attr and FileAttrs) = sr.Attr then
       begin
       RowCount := RowCount + 1;
       Cells[1,RowCount-1] := sr.Name;
       Cells[2,RowCount-1] := IntToStr(sr.Size);
       end;
     until FindNext(sr) <> 0;
     FindClose(sr);
   end;
 end;
end;

end.[/code]


 
Гаврила ©   (2005-06-28 23:15) [1]

Что в Edit1.Text?
Должно быть что-то типа "C:\Windows\*.*";


 
Green_Templar ©   (2005-06-28 23:16) [2]

Скачать можно с
http://green-templar.newmail.ru/HelpOnFindFirst.rar


 
Green_Templar ©   (2005-06-28 23:19) [3]

*.* пробовал, не помогает.


 
Ученик   (2005-06-28 23:21) [4]

А если убрать

if (sr.Attr and FileAttrs) = sr.Attr then


 
Anatoly Podgoretsky ©   (2005-06-28 23:22) [5]

Green_Templar ©   (28.06.05 23:12)  
При правильном значении Edit1.Text должен что то находить, не все конечно, поскольку пример в справке не столько учит, сколько запутывает :-)
Хорошии примеры смотри здесь http://podgoretsky.com/ftp/Language/nps/ru.delphi.html#N158


 
Anatoly Podgoretsky ©   (2005-06-28 23:22) [6]

Ученик   (28.06.05 23:21) [4]
На это и намекаю :-)


 
Green_Templar ©   (2005-06-28 23:25) [7]

Таки при *.* работает!!! Если включить faAnyFile :) Сори за тупые вопросы, я больше так не буду... И, конечно, огромное спасибо.



Страницы: 1 вся ветка

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.042 c
1-1120137772
and
2005-06-30 17:22
2005.07.18
Трассировка только своих модулей


1-1119615468
heckfy1
2005-06-24 16:17
2005.07.18
Настройка принтера


3-1117710731
andrex
2005-06-02 15:12
2005.07.18
Отмена изменений


14-1118921899
Andy BitOff
2005-06-16 15:38
2005.07.18
Посоветуйте иконки


3-1118163412
Julia
2005-06-07 20:56
2005.07.18
Печать отчетов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский