Gnom3
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: ; Скрипт создан через Мастер Inno Setup Script. ; ИСПОЛЬЗУЙТЕ ДОКУМЕНТАЦИЮ ДЛЯ ПОДРОБНОСТЕЙ ИСПОЛЬЗОВАНИЯ INNO SETUP! [Setup] AppName=My Application AppVersion=1.5 DefaultDirName={pf}\My Application [Code*] var UnInstPage: TWizardPage; fIleCount: TLabel; FileList: TNewListBox; UninsProgress: TNewProgressBar; OkButton,BrowseButton,UninsBtn: TNewButton; BrowseEdit: TNewEdit; ExtractTimer: TTimer; Step:Integer; procedure UpdPos(lpStep: Integer); var k: Integer; begin for k:=1 to lpStep div 2 do begin UninsProgress.Position:= UninsProgress.Position+1; UninsProgress.Refresh; end; end; procedure Extracted(Sender: TObject); var i: Integer; begin for I:=0 to FileList.Items.Count-1 do begin UpdPos(Step); DeleteFile(FileList.Items.Strings[I]); UpdPos(Step); UninsProgress.Position:= Step*(i+1); end; UninsProgress.Position:=UninsProgress.Max; UninsProgress.Refresh; DelTree(BrowseEdit.Text,True,True,True); Sleep(500); ExtractTimer.Enabled:=False; end; procedure GetAllFiles(Path: string; Lb: TNewListBox); var sRec: TFindRec; isFound: boolean; begin isFound := FindFirst(Path +'\*.*',sRec); while isFound do begin if (sRec.Name <> '.') and (sRec.Name <> '..') then begin if (sRec.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY then GetAllFiles(Path + '\' + sRec.Name, Lb); Lb.Items.Add(Path + '\' + sRec.Name); fIleCount.Caption:= 'Количество файлов:'+ IntToStr(FileList.Items.Count); end; Application.ProcessMessages; isFound := FindNext(sRec); end; FindClose(sRec); end; procedure BrowseEditChange(Sender: TObject); begin OkButton.Enabled:= BrowseEdit.Text<>''; end; procedure BrowseButtonClick(Sender: TObject); var pach:String; begin if BrowseForFolder('',pach,False)then BrowseEdit.Text:=pach; BrowseEditChange(nil); end; procedure OkButtonClick(Sender: TObject); begin FileList.Clear; fIleCount.Caption:= 'Количество файлов:'; GetAllFiles(BrowseEdit.Text, FileList ); if FileList.Items.Count>0 then Step:= 1000 div FileList.Items.Count; UninsBtn.Enabled:=true; end; procedure UninsBtnClick(Sender: TObject); begin ExtractTimer.Enabled:=True; end; procedure InitializeWizard(); begin { Creates custom wizard page } UnInstPage := CreateCustomPage(wpWelcome, 'Список файлов для удаления', 'Нажмите конпку Ок, чтобы получить список файлов'); { fIleCount } fIleCount := TLabel.Create(WizardForm); with fIleCount do begin Parent := UnInstPage.Surface; Alignment := taCenter; AutoSize := False; Caption := 'Количество файлов:'; SetBounds(ScaleX(104),ScaleY(190),ScaleX(161),ScaleY(13)); end; { FileList } FileList := TNewListBox.Create(WizardForm); with FileList do begin Parent := UnInstPage.Surface; SetBounds(ScaleX(0),ScaleY(24),ScaleX(417),ScaleY(160)); ItemHeight := 13; ItemIndex := -1; end; { UninsProgress } UninsProgress := TNewProgressBar.Create(WizardForm); with UninsProgress do begin Parent := UnInstPage.Surface; SetBounds(ScaleX(0),ScaleY(3),ScaleX(417),ScaleY(17)); Max:=1000; end; { OkButton } OkButton := TNewButton.Create(WizardForm); with OkButton do begin Parent := UnInstPage.Surface; SetBounds(ScaleX(3),ScaleY(190),ScaleX(43),ScaleY(45)); Caption := 'Ок'; OnClick := @OkButtonClick; end; { BrowseEdit } BrowseEdit := TNewEdit.Create(WizardForm); with BrowseEdit do begin Parent := UnInstPage.Surface; SetBounds(ScaleX(48),ScaleY(214),ScaleX(290),ScaleY(21)); OnChange := @BrowseEditChange; end; { BrowseButton } BrowseButton := TNewButton.Create(WizardForm); with BrowseButton do begin Parent := UnInstPage.Surface; SetBounds(ScaleX(342),ScaleY(212),ScaleX(75),ScaleY(23)); Caption := 'Обзор'; OnClick := @BrowseButtonClick; end; { UninsBtn } UninsBtn := TNewButton.Create(WizardForm); with UninsBtn do begin Parent := UnInstPage.Surface; SetBounds(ScaleX(312),ScaleY(185),ScaleX(105),ScaleY(23)); Caption := 'Удаление'; OnClick := @UninsBtnClick; Enabled:=False; end; ExtractTimer := TTimer.Create(WizardForm); with ExtractTimer do begin Interval := 100; OnTimer := @Extracted; Enabled:=False; end; BrowseEditChange(nil); end; |
| Всего записей: 864 | Зарегистр. 14-11-2010 | Отправлено: 19:43 31-12-2011 | Исправлено: Gnom3, 20:15 31-12-2011 |
|