Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 3]
Как убрать текст с поля деинсталлятора? http://forum.oszone.net/attachment.php?attachmentid=68172&stc=1&d=1312796930
insombia
08-08-2011, 14:18
Richter procedure InitializeUninstallProgressForm;
UninstallProgressForm.PageNameLabel.Font.Color:=clwhite;
замени на UninstallProgressForm.PageNameLabel.Font.Color:=clblack;
insombia
Так только чёрный текст на чёрном фоне становится невидимым. Остаётся чёрная прямоугольная площадь, перекрывающая рисунок...
У меня был код, растягивающий верхнюю картинку в окне установщика. Там как-то его вкрутил, а вот с деинсталлятором что-то не получается.
insombia
08-08-2011, 14:28
Richter попробуй удалить UninstallProgressForm.PageNameLabel.Font.Color:=clwhite; потом скажешь что будет писать
Тот же эффект - текста нет а площадь под надпись накрывает рисунок.
insombia
08-08-2011, 14:32
Richter жди тогда когда кто-то другой придет и тебе подскажет,дай свой скрипт посмотрю может выйдет
http://forum.oszone.net/attachment.php?attachmentid=68176&stc=1&d=1312799830
insombia
08-08-2011, 15:11
Richter не знаю не получилось
UninstallProgressForm.PageNameLabel.Hide;
valyok666
08-08-2011, 16:40
Richter, Лови (http://rghost.ru/17234771)
заметил что у тебя ещё на финишной странице картинка уходила влево исправил=)
insombia
09-08-2011, 10:09
Как переместить выбор создания ярлыков и дополнительного ПО возле выбора куда установить игру чтобы при этом секция где до этого нужно было выбирать все это пропала?
No4noylis
09-08-2011, 13:15
insombia, Для этого удаляй Task, и на SelectDir сам создавай чекбоксы для ярлыков и дополнительного ПО!
insombia, как так
[Setup]
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[CustomMessages]
russian.SoftTask=Установить дополнительное ПО
russian.SoftInstall=Идет установка дополнительного ПО. Пожалуйста подождите...
[Icons]
Name: {commondesktop}\My Program; Filename: {app}\MyProg.exe; IconIndex: 0; Check: MakeDesktopIcon
[Code]
var
Soft: TCheckBox ;
DesktopIcon: TCheckBox;
DesktopIconlb: TLabel;
function MakeDesktopIcon: Boolean;
begin
Result:=DesktopIcon.Checked;
end;
procedure InitializeWizard();
begin
Soft:= TCheckBox.Create(WizardForm)
Soft.SetBounds(WizardForm.DirEdit.Left, WizardForm.DirEdit.Top+ScaleY(26), ScaleX(200), ScaleY(20))
Soft.Caption:= ExpandConstant('{cm:SoftTask}')
Soft.Checked:=True;
Soft.Parent:=WizardForm.SelectDirPage;
DesktopIcon := TCheckBox.Create(WizardForm);
with DesktopIcon do
begin
Left := ScaleX(0);
Top := ScaleY(130);
Width := ScaleX(15);
TabOrder := 0;
Checked := True;
Parent := WizardForm.SelectDirPage;
end;
DesktopIconlb := TLabel.Create(WizardForm);
DesktopIconlb.Left := DesktopIcon.Left + ScaleX(17);
DesktopIconlb.Top := DesktopIcon.Top + ScaleY(3);
DesktopIconlb.Caption := 'Добавить ярлык на рабочий стол';
DesktopIconlb.Font.Color := clblack;
DesktopIconlb.Transparent := True;
DesktopIconlb.Parent := WizardForm.SelectDirPage;
end;
procedure CurStepChanged(CurStep: TSetupStep);
var res: integer;
begin
if CurStep = ssPostInstall then begin
If Soft.Checked then begin
WizardForm.FileNameLabel.Caption:=ExpandConstant('{cm:SoftInstall}');
Exec(ExpandConstant('{src}\Redist\PhysX_9.09.0428_System Software.exe'), '/quiet', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, Res);
Exec(ExpandConstant('{src}\DirectX\DXSETUP.exe'), '/silent', ExpandConstant('{src}\DirectX'), SW_SHOW, ewWaitUntilTerminated, Res);
if isWin64 then
Exec(ExpandConstant('{src}\Redist\vcredist_x64.exe'), '/Q', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, Res)
else
Exec(ExpandConstant('{src}\Redist\vcredist_x86.exe'), '/Q', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, Res);
end;
end;
end;
insombia
09-08-2011, 13:33
как сделать чтобы в ис доне не писалось какие именно файлы распаковываются а просто распаковка файлов?
insombia
09-08-2011, 13:54
vint56 блин у меня черный инсталятор то получилось так http://images.bcm.net.ua/images/42941626350248071598.jpg как исправить?
insombia, как сделать чтобы в ис доне не писалось какие именно файлы распаковываются а просто распаковка файлов? »
procedure CurStepChanged(CurStep: TSetupStep);
ShowComponents; на этапе показа
LabelCurrFileName.Hide; он скроет лайбал и не будет показывать файлы
а поповоду 2 вопроса
[Setup]
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[CustomMessages]
russian.SoftTask=Установить дополнительное ПО
russian.SoftInstall=Идет установка дополнительного ПО. Пожалуйста подождите...
[Icons]
Name: {commondesktop}\My Program; Filename: {app}\MyProg.exe; IconIndex: 0; Check: MakeDesktopIcon
[Code]
var
Soft,DesktopIcon: TCheckBox ;
Softlb,DesktopIconlb: TLabel;
function MakeDesktopIcon: Boolean;
begin
Result:=DesktopIcon.Checked;
end;
procedure InitializeWizard();
begin
Soft := TCheckBox.Create(WizardForm);
with Soft do
begin
Left := ScaleX(0);
Top := ScaleY(110);
Width := ScaleX(15);
TabOrder := 0;
Checked := True;
Parent := WizardForm.SelectDirPage;
end;
Softlb := TLabel.Create(WizardForm);
Softlb.Left := ScaleX(17);
Softlb.Top := ScaleY(110);
Softlb.Caption := 'Установить По';
Softlb.Font.Color := clwhite;
Softlb.Transparent := True;
Softlb.Parent := WizardForm.SelectDirPage;
DesktopIcon := TCheckBox.Create(WizardForm);
with DesktopIcon do
begin
Left := ScaleX(0);
Top := ScaleY(130);
Width := ScaleX(15);
TabOrder := 0;
Checked := True;
Parent := WizardForm.SelectDirPage;
end;
DesktopIconlb := TLabel.Create(WizardForm);
DesktopIconlb.Left := DesktopIcon.Left + ScaleX(17);
DesktopIconlb.Top := DesktopIcon.Top + ScaleY(3);
DesktopIconlb.Caption := 'Добавить ярлык на рабочий стол';
DesktopIconlb.Font.Color := clwhite;
DesktopIconlb.Transparent := True;
DesktopIconlb.Parent := WizardForm.SelectDirPage;
end;
procedure CurStepChanged(CurStep: TSetupStep);
var res: integer;
begin
if CurStep = ssPostInstall then begin
If Soft.Checked then begin
WizardForm.FileNameLabel.Caption:=ExpandConstant('{cm:SoftInstall}');
Exec(ExpandConstant('{src}\Redist\PhysX_9.09.0428_System Software.exe'), '/quiet', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, Res);
Exec(ExpandConstant('{src}\DirectX\DXSETUP.exe'), '/silent', ExpandConstant('{src}\DirectX'), SW_SHOW, ewWaitUntilTerminated, Res);
if isWin64 then
Exec(ExpandConstant('{src}\Redist\vcredist_x64.exe'), '/Q', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, Res)
else
Exec(ExpandConstant('{src}\Redist\vcredist_x86.exe'), '/Q', ExpandConstant('{src}\Redist'), SW_SHOW, ewWaitUntilTerminated, Res);
end;
end;
end;
insombia
09-08-2011, 14:40
что делать если есть 2 одинаковых CurStepChanged(CurStep: TSetupStep);
с ним типа
Procedure CurPageChanged(CurPageID: Integer);
Begin
CurPageChanged2 (CurPageID);
end; не пашет
insombia, там где одинаковые поменяй на 1 и 2
procedure CurPageChanged(CurPageID: Integer);
begin
CurPageChanged1(CurPageID);
CurPageChanged2(CurPageID);
end;
R.i.m.s.k.y.
09-08-2011, 14:50
будет забавно если CurPageChanged1 и CurPageChanged2 сработают над одной страницей
Gnom_aka_Lexander
09-08-2011, 15:00
будет забавно если CurPageChanged1 и CurPageChanged2 сработают над одной страницей »
Я писал уже про объединение процедур несколько раз, но есть авторитетные люди, которые говорят, что что можно забить на мои советы, и делать так, как по их авторитетному мнению нужно делать. Но, в конце концов, справедливость не так, так иначе себя покажет. Программирование терпит мелкие ошибки до случая, не далее :)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.