Показать сообщение отдельно
  #15  
Старый 18.05.2011, 13:03
Cheater Cheater вне форума
Прохожий
 
Регистрация: 14.05.2011
Сообщения: 14
Репутация: 10
По умолчанию Вот, сваял... Не пойму что не так...

Код:
unit Component1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Mask, Menus, ComCtrls, FileCtrl;

type
  TComponent1 = class(TComponent)
   procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  protected
    { Protected declarations }
  public
    { Public declarations }
    constructor Create(AOwner: TComponent); override;
  published
    { Published declarations }

  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Samples', [TComponent1]);
end;
{ WWW }
constructor Create(AOwner:TComponents);
begin
  inherited Create(AOwner);
  Options := Options + [ofFileMustExist, ofPathMustExist];
procedure ScanDir(StartDir: string; Mask: string; List: TStrings);
var
  SearchRec: TSearchRec;
begin
  if Mask = '' then
    Mask := '*.*';
  if StartDir[Length(StartDir)] <> '\' then
    StartDir := StartDir + '\';
  if FindFirst(StartDir + Mask, faAnyFile, SearchRec) = 0 then
  begin
    repeat Application.ProcessMessages;
      if (SearchRec.Attr and faDirectory) <> faDirectory then
        List.Add(StartDir + SearchRec.Name)
      else if (SearchRec.Name <> '..') and (SearchRec.Name <> '.')then
      begin
        List.Add(StartDir + SearchRec.Name + '\');
      ScanDir(StartDir + SearchRec.Name + '\', Mask, List);
  end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ListBox1.Items.Clear;
  ScanDir('Z:\Downloads', '*.*', ListBox1.Items);
  ListBox1.Items.SaveToFile('Z:\Dir.txt');
  Close;
end;


end;
end.
Ответить с цитированием