Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]
ILIA_1992
11-06-2011, 13:28
Лександер,
так если удалить то вообще не будет софт ставиться
insombia
11-06-2011, 13:34
ILIA_1992
[Tasks]
Name: icon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}
Name: soft; Description: {cm:soft}
Name: soft\dx; Description: {cm:dx}
Name: soft\vc; Description: {cm:vc}
[Run]
Filename: {win}\regedit.exe; Parameters: /s {tmp}\ва.reg; StatusMsg: "Вносим изменения в реестр ..."; Flags: waituntilterminated runasoriginaluser
Filename: D:\Duke Nukem Forever (repack)\Redist\DirectX\DXSETUP.exe; Parameters: /silent; StatusMsg: {cm:dx1}; Tasks: soft\dx
Filename: D:\Duke Nukem Forever (repack)\Redist\vcredist_x86.exe; Parameters: /q; StatusMsg: {cm:vc1}; Tasks: soft\vc
это пример
insombia
11-06-2011, 14:02
кто может помочь в чем проблема когда игра установилась то после закрытия инсталятора вылазит ошибка http://pic.4m.net.ua/images/31230954494101212670.jpg
http://rghost.ru/10354311
Gnom_aka_Lexander
11-06-2011, 15:06
insombia, зачем DeInitializeSetup переименовал в DeInitializeSetup2 ? потому и ошибка.
ILIA_1992, так если удалить то вообще не будет софт ставиться »
так укажи правильно путь к софту, и не будет ошибки. А то взяли моду - я так написал, значит так тому и быть, а почему ошибка - можно на форуме спросить, а потом еще и поспорить - "ну я-же написал!"
insombia
11-06-2011, 16:49
как сделать то что выделено? http://i23.fastpic.ru/big/2011/0611/af/142697bf607770be6c59a180b93b97af.jpg хотя бы чтобы ярлыки создать
Gnom_aka_Lexander
11-06-2011, 18:55
insombia, Слегка доработанный пример от Виктора доброва из шапки.
[Setup]
AppName=My Program
AppVerName=My Program ver.1.5
DefaultDirName={pf}\My Program
DisableDirPage=yes
ShowTasksTreeLines=true
AlwaysShowDirOnReadyPage=true
AlwaysShowGroupOnReadyPage=true
[Tasks]
Name: desktopicon; Description: Create a &desktop icon; GroupDescription: Additional icons:
Name: desktopicon\common; Description: For all users; GroupDescription: Additional icons:; Flags: exclusive
Name: desktopicon\user; Description: For the current user only; GroupDescription: Additional icons:; Flags: exclusive unchecked
Name: quicklaunchicon; Description: Create a &Quick Launch icon; GroupDescription: Additional icons:; Flags: unchecked
Name: associate; Description: &Associate files; GroupDescription: Other tasks:; Flags: unchecked
[Code]
var
FreeMB, TotalMB: Cardinal;
NeedSize: Integer;
NeedSpaceLabel, FreeSpaceLabel: TLabel;
procedure GetFreeSpaceCaption(Sender: TObject);
var
Path: String;
begin
Path := ExtractFileDrive(WizardForm.DirEdit.Text);
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
if FreeMB > 1024 then
FreeSpaceLabel.Caption := 'Свободно на выбранном диске: ' + FloatToStr(round(FreeMB/1024*100)/100) + ' GB'
else
FreeSpaceLabel.Caption := 'Свободно на выбранном диске: ' + IntToStr(FreeMB)+ ' MB';
if FreeMB < NeedSize then
WizardForm.NextButton.Enabled := False
else
WizardForm.NextButton.Enabled := True;
end;
procedure InitializeWizard();
begin
WizardForm.SelectTasksLabel.Hide;
WizardForm.DiskSpaceLabel.Hide;
WizardForm.SelectDirBitmapImage.Parent := WizardForm.SelectTasksPage;
WizardForm.DiskSpaceLabel.Parent := WizardForm.SelectTasksPage;
WizardForm.DirBrowseButton.Parent := WizardForm.SelectTasksPage;
WizardForm.DirEdit.Parent := WizardForm.SelectTasksPage;
WizardForm.SelectDirBrowseLabel.Parent := WizardForm.SelectTasksPage;
WizardForm.SelectDirLabel.Parent := WizardForm.SelectTasksPage;
WizardForm.TasksList.Top := ScaleY(109);
WizardForm.TasksList.Height := ScaleY(85);
NeedSpaceLabel := TLabel.Create(WizardForm);
with NeedSpaceLabel do
begin
Parent := WizardForm.SelectTasksPage;
Left := ScaleX(0);
Top := ScaleY(200);
Width := ScaleX(209);
Height := ScaleY(13);
Caption := WizardForm.DiskSpaceLabel.Caption;
end;
FreeSpaceLabel := TLabel.Create(WizardForm);
with FreeSpaceLabel do
begin
Parent := WizardForm.SelectTasksPage;
Left := ScaleX(0);
Top := ScaleY(220);
Width := ScaleX(209);
Height := ScaleY(13);
end;
WizardForm.DirEdit.OnChange := @GetFreeSpaceCaption;
WizardForm.DirEdit.Text := WizardForm.DirEdit.Text + #0;
end;
Лейбелы, если не нужны, можно не создавать, основное - перенос выбора папки установки на страницу задач, и подгон размеров таск-листа под изменившееся наполнение страницы. Теоретически - можно наоборот, если нет привязки задач к компонентам - перенести таск-лист на страницу выбора папки.
[Code]
procedure InitializeWizard();
begin
with WizardForm.TasksList do
begin
Top := ScaleY(109);
Height := ScaleY(88);
Parent := WizardForm.SelectDirPage;
end;
end;
insombia
11-06-2011, 19:01
Лександер ошибка в закосе под механиков уже есть одна строчка которую удалять нельзя но то что показывает свободное место не очень главное главное чтобы ярлыки создавать можно было как там
insombia
11-06-2011, 20:42
procedure InitializeWizard();
begin
with WizardForm.TasksList do
begin
Top := ScaleY(109);
Height := ScaleY(88);
Parent := WizardForm.SelectDirPage;
end;
end;
Лександер не пашет
Gnom_aka_Lexander
11-06-2011, 21:30
insombia, абсолютно все, что я советую, я предварительно проверяю! создай хоть одну задачу, потом утверждай, что не пашет.
insombia
11-06-2011, 22:09
Лександер всё пашет я просто забыл редактировать но только выбор папки установки на дополнительные задачи поменялись местами
Лександер не подскажеш что используют каталисты или механики что архивы распаковываються не в прогресс баре а системно в диспечере есть задача arc.dll и через некоторе время прогресс баг перемещаеться почти до середины?
Лександер не подскажеш что используют каталисты »
Отвечу я. Мы используем isexec.dll разработки Vo1t'а. Но в данное время мы переходим на плавный прогрессбар. Пардон за оффтоп. :off:
insombia
11-06-2011, 22:24
nik1967 cпасибо а вы используите ISWin7?
insombia, нет, мы используем более продвинутый вариант iswin7logo.dll, опять же разработки Vo1t'а.
insombia
11-06-2011, 22:32
nik1967 а они есть в нете? мне бы хотябы чтобы распаковка шла как например у вас а то обычная неприкольная
insombia, нет, и давай заканчивать оффтоп.
insombia
11-06-2011, 23:15
кто знает скрипт для arc.dll?
insombia, ISFreeArcExtract v.4.1 (http://forum.ru-board.com/topic.cgi?forum=5&topic=36421&start=360#20)
insombia
12-06-2011, 10:18
Neutron но не знают люди зачем то всё время спрашивать?
insombia
12-06-2011, 11:26
Neutron понятно а чем тебе понравился тот инстал?
;#define FreeArc
#ifdef FreeArc
#define ArcLocation "{src}\*.bin"
#endif
подскажите,внешний arc станет bin'ом что-ли? Или надо на arc исправить мне?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.