Ветеран
Сообщения: 978
Благодарности: 564
|
Профиль
|
Сайт
|
Отправить PM
| Цитировать
Цитата Gugle:
А прочитать список файлов в папке как нить можно? »
|
можно:
читать дальше »
Код: ![Выделить весь код](images/misc/selectcode.png)
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[*Code]
var
ISCustomPage1: TWizardPage;
Label1: TLabel;
NewListBox1: TNewListBox;
NewButton1: TNewButton;
NewEdit1: TNewEdit;
procedure FindFile(Dir: string);
var
SR: TFindRec;
FindRes: Boolean;
begin
FindRes := FindFirst(Dir + '*.*', SR);
while FindRes do
begin
if ((SR.Attributes and $00000010) = $00000010) and
((SR.Name = '.') or (SR.Name = '..')) then
begin
FindRes := FindNext(SR);
Continue;
end;
// если найден каталог, то
if ((SR.Attributes and $00000010) = $00000010) then
begin
// входим в процедуру поиска с параметрами текущего каталога +
// каталог, что мы нашли
FindFile(Dir + SR.Name + '\');
FindRes := FindNext(SR);
// после осмотра вложенного каталога мы продолжаем поиск
// в этом каталоге
Continue; // продолжить цикл
end;
NewListBox1.Items.Add(SR.Name);
FindRes := FindNext(SR);
end;
FindClose(SR);
end;
procedure NewButton1Click(Sender: TObject);
begin
NewListBox1.Clear; // очистка списка файлов
FindFile(NewEdit1.Text); // поиск файлов с начальными условиями, заданных в NewEdit1
end;
procedure InitializeWizard();
begin
{ Creates custom wizard page }
ISCustomPage1 := CreateCustomPage(wpWelcome, 'Поиск', 'Здесь поиск файлов в заданном каталоге');
{ ISCustomPage1 }
with ISCustomPage1.Surface do
begin
Name := 'ISCustomPage1';
end;
{ Label1 }
Label1 := TLabel.Create(WizardForm);
with Label1 do
begin
Name := 'Label1';
Parent := ISCustomPage1.Surface;
Caption := 'Введите адрес поиска';
Transparent := False;
Left := ScaleX(8);
Top := ScaleY(192);
Width := ScaleX(114);
Height := ScaleY(13);
end;
{ NewListBox1 }
NewListBox1 := TNewListBox.Create(WizardForm);
with NewListBox1 do
begin
Parent := ISCustomPage1.Surface;
Left := ScaleX(0);
Top := ScaleY(0);
Width := ScaleX(417);
Height := ScaleY(185);
ItemHeight := 13;
ItemIndex := -1;
end;
{ NewButton1 }
NewButton1 := TNewButton.Create(WizardForm);
with NewButton1 do
begin
Parent := ISCustomPage1.Surface;
Left := ScaleX(342);
Top := ScaleY(208);
Width := ScaleX(75);
Height := ScaleY(25);
Caption := 'Искать';
OnClick := @NewButton1Click;
end;
{ NewEdit1 }
NewEdit1 := TNewEdit.Create(WizardForm);
with NewEdit1 do
begin
Parent := ISCustomPage1.Surface;
Left := ScaleX(0);
Top := ScaleY(212);
Width := ScaleX(329);
Height := ScaleY(21);
Text := ExpandConstant('{pf}\Inno Setup 5\');
end;
end;
|
-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.
Отправлено: 20:24, 07-11-2011
| #86
|