Как объединить два скрипта

frontlines45

Новичок
Приветствую! Как объединить два скрипта программы стационарной и портабельной, чтобы получилось вот такое?
 

Вложения

  • Снимок экрана (21).png
    Снимок экрана (21).png
    55 KB · Просмотры: 15
Скрипт стационарной программы
Код:
; Скрипт создан через Мастер Inno Setup Script.
; ИСПОЛЬЗУЙТЕ ДОКУМЕНТАЦИЮ ДЛЯ ПОДРОБНОСТЕЙ ИСПОЛЬЗОВАНИЯ INNO SETUP!

[Setup]
; Примечание: Значение AppId идентифицирует это приложение.
; Не используйте одно и тоже значение в разных установках.
; (Для генерации значения GUID, нажмите Инструменты | Генерация GUID.)
AppId={{6E53950F-D8DF-426B-A910-F0530DFF702C}
AppName= Ashampoo WinOptimizer 27
AppVersion= 27.0.2.0
;AppVerName= Ashampoo WinOptimizer 27  27.0.2.0
AppPublisher= 2024 Ashampoo Gmb & Co.KG
;AppPublisherURL=
;AppSupportURL=
;AppUpdatesURL=
PrivilegesRequired=admin
DefaultDirName={pf}\Ashampoo\Ashampoo WinOptimizer 27
DefaultGroupName= Ashampoo WinOptimizer 27
AllowNoIcons=yes
OutputDir=C:\Users\Admin\Desktop\Ashampoo
OutputBaseFilename= Ashampoo WinOptimizer
SetupIconFile=C:\Users\Admin\Desktop\Новая папка (2)\SetupIcon.ico
Compression=lzma2
;SolidCompression=yes
DisableProgramGroupPage=yes
WizardImageFile=WizardImage0.bmp
WizardSmallImageFile="C:\Users\Admin\Desktop\Новая папка (2)\WizardSmallImage0.bmp"

[Languages]
Name: "english"; MessagesFile: "compiler:Languages\English.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1

[Files]
Source: "C:\Program Files (x86)\Ashampoo\Ashampoo WinOptimizer 27\WO27.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Program Files (x86)\Ashampoo\Ashampoo WinOptimizer 27\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; Примечание: Не используйте "Flags: ignoreversion" для системных файлов

[Registry]
Root: HKLM; SubKey: SOFTWARE\Ashampoo; Flags: uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27; ValueType: dword; ValueName: AutoAnalyseOnStart; ValueData: $00000000; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: OCO_Methode; ValueData: $00000002; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: string; ValueName: RadioButton_Backups_AutoDelete_30-RadioButton_Backups_AutoDelete_Never; ValueData: RadioButton_Backups_AutoDelete_Never; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_Backups_Ask_Before_AutoDelete; ValueData: $00000001; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_Start_ShowInfos; ValueData: $00000001; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_Start_ShowTips; ValueData: $00000000; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: string; ValueName: ForceLanguage_LCID; ValueData: ru-ru; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_AutoDownload_SM; ValueData: $00000000; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_AutoDownload_ST; ValueData: $00000000; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_AutoDownload_ToolBars; ValueData: $00000000; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKLM; SubKey: SOFTWARE\Ashampoo\Ashampoo WinOptimizer 27\Options; ValueType: dword; ValueName: CheckBox_Animation_QuickAccess; ValueData: $00000000; Flags: uninsdeletevalue uninsdeletekeyifempty

[Icons]
Name: "{group}\ Ashampoo WinOptimizer 27"; Filename: "{app}\WO27.exe"
Name: "{group}\{cm:UninstallProgram, Ashampoo WinOptimizer 27}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\ Ashampoo WinOptimizer 27"; Filename: "{app}\WO27.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\ Ashampoo WinOptimizer 27"; Filename: "{app}\WO27.exe"; Tasks: quicklaunchicon

[Run]
Filename: "{app}\WO27.exe"; Description: "{cm:LaunchProgram, Ashampoo WinOptimizer 27}"; Flags: nowait postinstall skipifsilent

[ISFormDesigner]
WizardForm=FF0A005457495A415244464F524D0030105401000054504630F10B5457697A617264466F726D0A57697A617264466F726D0C436C69656E744865696768740368010B436C69656E74576964746803F1010C4578706C696369744C65667402000B4578706C69636974546F7002000D4578706C6963697457696474680301020E4578706C69636974486569676874038F010D506978656C73506572496E636802600A54657874486569676874020D00F10C544E65774E6F7465626F6F6B0D4F757465724E6F7465626F6F6B00F110544E65774E6F7465626F6F6B506167650B57656C636F6D65506167650D4578706C69636974576964746803F1010E4578706C6963697448656967687403390100F10C544269746D6170496D6167651157697A6172644269746D6170496D61676505576964746803AC000A4269746D617046696C65061057697A617264496D616765302E626D700D4578706C69636974576964746803AC000000000000

[Code]
{ RedesignWizardFormBegin } // Не удалять эту строку!
// Не изменять эту секцию. Она создана автоматически.
procedure RedesignWizardForm;
begin
  with WizardForm.WizardBitmapImage do
  begin
    Width := ScaleX(172);
  end;

{ ReservationBegin }
  // Вы можете добавить ваш код здесь.

{ ReservationEnd }
end;
// Не изменять эту секцию. Она создана автоматически.
{ RedesignWizardFormEnd } // Не удалять эту строку!

procedure InitializeWizard();
begin
  RedesignWizardForm;
end;
 
Скрипт портабельной программы
Код:
; Скрипт создан через Мастер Inno Setup Script.
; ИСПОЛЬЗУЙТЕ ДОКУМЕНТАЦИЮ ДЛЯ ПОДРОБНОСТЕЙ ИСПОЛЬЗОВАНИЯ INNO SETUP!

[Setup]
; Примечание: Значение AppId идентифицирует это приложение.
; Не используйте одно и тоже значение в разных установках.
; (Для генерации значения GUID, нажмите Инструменты | Генерация GUID.)
AppId={{FD42537B-6440-4B82-B755-A227B19AB630}
AppName=Ashampoo WinOptimizer 27
AppVersion=Ashampoo WinOptimizer 27 v.27.0.2.0
AppVerName=Ashampoo WinOptimizer 27 Ashampoo WinOptimizer 27 v.27.0.2.0
AppPublisher=2024 Ashampoo Gmb & Co.KG
AppPublisherURL=https://www.ashampoo.com
AppSupportURL=https://www.ashampoo.com
AppUpdatesURL=https://www.ashampoo.com
DefaultDirName=C:\Users\Admin\Desktop\Ashampoo WinOptimizer 27 Portable
DefaultGroupName=Ashampoo WinOptimizer 27
DisableProgramGroupPage=yes
Uninstallable=no
InfoBeforeFile=C:\Users\Admin\Desktop\Ashampoo\img\Redme.txt
OutputDir=C:\Users\Admin\Desktop\OutPut
OutputBaseFilename=Ashampoo WinOptimizer 27 Portable
SetupIconFile=C:\Users\Admin\Desktop\Ashampoo\img\SetupIcon.ico
Compression=lzma2
;SolidCompression=yes
WizardImageFile="C:\Users\Admin\Desktop\Ashampoo\img\WizardImage0.bmp"
WizardSmallImageFile="C:\Users\Admin\Desktop\Ashampoo\img\WizardSmallImage0.bmp"

[Languages]
Name: "english"; MessagesFile: "compiler:Languages\English.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"

[Files]
Source: "C:\Users\Admin\Desktop\Ashampoo WinOptimizer 27 Portable\AshampooWOPortable.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\Admin\Desktop\Ashampoo WinOptimizer 27 Portable\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; Примечание: Не используйте "Flags: ignoreversion" для системных файлов

[Icons]
Name: "{group}\Ashampoo WinOptimizer 27"; Filename: "{app}\AshampooWOPortable.exe"

[Run]
Filename: "{app}\AshampooWOPortable.exe"; Description: "{cm:LaunchProgram,Ashampoo WinOptimizer 27}"; Flags: nowait postinstall skipifsilent
 
Адаптируйте под себя
 
Код:
[Setup]
AppName=MyProg
AppVerName=MyProg
DefaultDirName={pf}\MyProg
DefaultGroupName=MyProg
DirExistsWarning=no
CreateUninstallRegKey=IsTaskSelected('portablemode')
Uninstallable=IsTaskSelected('portablemode')

[Tasks]
Name: portablemode; Description:  "Portable Mode"; Check: Uninst

[CustomMessages]
MakeUninst= Create a portable version?

[Code]
var
MyTask : TCheckBox;

function Uninst():Boolean;
begin
result:=true;
if MyTask.Checked then
result:=False
end;

procedure InitializeWizard();
begin
  MyTask:=TCheckBox.Create(WizardForm);
  with MyTask do
  begin
    Parent:=WizardForm.SelectDirPage;
    Caption:=ExpandConstant('{cm:MakeUninst}');
    Left:=ScaleX(0);
    Top:=ScaleY(115);
    Width:=ScaleX(200);
    Height:=ScaleY(15);
    TabOrder:=0;
    Checked:=False;
  end;
 end;
 
Код:
[Setup]
AppName=MyProg
AppVerName=MyProg
DefaultDirName={pf}\MyProg
DefaultGroupName=MyProg
DirExistsWarning=no
CreateUninstallRegKey=IsTaskSelected('portablemode')
Uninstallable=IsTaskSelected('portablemode')

[Tasks]
Name: portablemode; Description:  "Portable Mode"; Check: Uninst

[CustomMessages]
MakeUninst= Create a portable version?

[Code]
var
MyTask : TCheckBox;

function Uninst():Boolean;
begin
result:=true;
if MyTask.Checked then
result:=False
end;

procedure InitializeWizard();
begin
  MyTask:=TCheckBox.Create(WizardForm);
  with MyTask do
  begin
    Parent:=WizardForm.SelectDirPage;
    Caption:=ExpandConstant('{cm:MakeUninst}');
    Left:=ScaleX(0);
    Top:=ScaleY(115);
    Width:=ScaleX(200);
    Height:=ScaleY(15);
    TabOrder:=0;
    Checked:=False;
  end;
 end;
это типа так?
 

Вложения

  • Снимок экрана (21).png
    Снимок экрана (21).png
    55 KB · Просмотры: 9
зачем делать то же самое? делай свое. там не обязательно объединять. там просто добавляешь с стационарную))
 
А как это сделать, пример можно?
так как бы чего там сложного то? размещать картинки вроде новый inno позволяет, bevel разместить то же можно. а так +-
Код:
[Setup]
AppName=MyProg
AppVerName=MyProg
DefaultDirName={pf}\MyProg
DefaultGroupName=MyProg
DirExistsWarning=no
CreateUninstallRegKey=IsTaskSelected('portablemode')
Uninstallable=IsTaskSelected('portablemode')

[Tasks]
Name: portablemode; Description:  "Portable Mode"; Check: Uninst

[UninstallDelete]
Type: filesandordirs; Name: {app} ;

[CustomMessages]
MakeUninst= portable version
MakeUninst1= standart version

[Code]
var
MyTask, MyTask1: TRadioButton;

function Uninst():Boolean;
begin
  result:=true;
  if MyTask.Checked then
  result:=false
end;

function ShouldSkipPage(PageID: Integer): Boolean;
begin
  if PageID = wpSelectTasks then
  Result:= True;
end;

procedure InitializeWizard();
begin
  MyTask:=TRadioButton.Create(WizardForm);
  with MyTask do
  begin
    Parent:=WizardForm.SelectDirPage;
    Caption:=ExpandConstant('{cm:MakeUninst}');
    Left:=ScaleX(0);
    Top:=ScaleY(115);
    Width:=ScaleX(200);
    Height:=ScaleY(15);
    TabOrder:=0;
    Checked:=False;
  end;
 
  MyTask1:=TRadioButton.Create(WizardForm);
  with MyTask1 do
  begin
    Parent:=WizardForm.SelectDirPage;
    Caption:=ExpandConstant('{cm:MakeUninst1}');
    Left:=ScaleX(300);
    Top:=ScaleY(115);
    Width:=ScaleX(200);
    Height:=ScaleY(15);
    TabOrder:=0;
    Checked:=True;
  end;
 end;
 
Назад
Сверху