Здравствуйте!
У меня такая проблема. В моем старом скрипте был реализован чекбокс на WelcomePage, который выполнял функцию установки некоторых файлов, а так же принудительно менял путь установки и отключал возможность деинсталляции.
Решил сменить скрипт на что-то другое и теперь незнаю как впиндюрить туда этот чекбокс
Старый чекбокс в скрипте выглядит так:
Пробовал его в новом скрипте как-то реализовать, но тщетно. Знаний моих определенно не хватает
Помогите, пожалуйста! Сам новый скрипт во вложении далее.
Скачать файлы можно по ссылке: https://cloud.mail.ru/public/T1N6/ewZBMAdyK
У меня такая проблема. В моем старом скрипте был реализован чекбокс на WelcomePage, который выполнял функцию установки некоторых файлов, а так же принудительно менял путь установки и отключал возможность деинсталляции.
Решил сменить скрипт на что-то другое и теперь незнаю как впиндюрить туда этот чекбокс
Старый чекбокс в скрипте выглядит так:
Код:
#define GameName "Dark Souls II"
[Setup]
Uninstallable=not steam
[Files]
; Депоты (Steam)
Source: {depot}\depotcache\*.manifest; DestDir: {reg:HKLM\Software\Valve\Steam,InstallPath}\depotcache; Flags: overwritereadonly ignoreversion; Check: steam
Source: {depot}\SteamApps\*.acf; DestDir: {app}\..\..\; Flags: overwritereadonly ignoreversion; Check: steam
[Code]
var
Label1: TLabel;
{ Label1 }
Label1 := TLabel.Create(WizardForm);
with Label1 do
begin
Parent := WizardForm.WelcomePage;
Caption := '** - данная опция только для обладателей лицензионной ' + #13#10 +
' копии игры, которые хотят установить игру' + #13#10 +
' непосредственно в Steam.';
Font.Color := clWindowText;
Font.Height := -9;
Font.Name := 'Comic Sans MS';
Font.Style := [fsItalic];
ParentFont := False;
Transparent := False;
Left := ScaleX(170);
Top := ScaleY(270);
Width := ScaleX(263);
Height := ScaleY(39);
end;
var
SteamCheckBox : TNewCheckBox;
procedure InitializeWizard;
begin
RedesignWizardForm;
SteamCheckBox := TNewCheckBox.Create(WizardForm);
with SteamCheckBox do
begin
Parent := WizardForm.WelcomePage;
SetBounds(ScaleX(185), ScaleY(245), ScaleX(200), ScaleY(20));
Caption := 'Установка в Steam **';
end;
end;
function steam: boolean;
begin
if SteamCheckBox.Checked then Result:=True else Result:=false;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
if (CurPageID = wpSelectDir) and (SteamCheckBox.Checked) then
begin
if RegKeyExists(HKLM, 'Software\Valve\Steam') then
WizardForm.DirEdit.Text := ExpandConstant('{reg:HKLM\Software\Valve\Steam,InstallPath}\steamapps\common\{#GameName}')
else MsgBox('Steam не установлен', mbInformation, MB_OK);
end
end;
Пробовал его в новом скрипте как-то реализовать, но тщетно. Знаний моих определенно не хватает
Помогите, пожалуйста! Сам новый скрипт во вложении далее.
Скачать файлы можно по ссылке: https://cloud.mail.ru/public/T1N6/ewZBMAdyK