Добрый день! Имеется следующая конструкция
читать дальше »
Код:

#define MyAppName "KMBD"
#define MyAppVerName "KMBD Setup"
#define MyAppPublisher "NIC MVD"
#define MyAppExeName "ModelApp.exe"
#define MyFrameWorkName "dotNetFx40_Full_x86_x64.exe"
[Setup]
AppName={#MyAppName}
AppVerName={#MyAppVerName}
AppPublisher={#MyAppPublisher}
DefaultDirName={pf}\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
OutputDir=C:\OutPUt
OutputBaseFilename=setup
SetupIconFile=C:\Users\NIC\Desktop\Install\res\KMBD1311\RunApp\tank.ico
Compression=lzma
SolidCompression=yes
[Types]
Name: full; Description: Полная установка
Name: custom; Description: Выборочная установка; Flags: iscustom
[Languages]
Name: "russian"; MessagesFile: "compiler:Default.isl"
[Components]
Name: KMBD; Description: Пакет KMBD; Types: full custom;
Name: MAP; Description: Карта; Types: full custom;
Name: Framework; Description: .NET Framework 4.0; Types:custom;
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
;Source: "C:\Users\NIC\Desktop\Install\res\KMBD1311\RunApp\ModelApp.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\NIC\Desktop\Install\res\KMBD1311\*"; DestDir: "{app}"; Components: KMBD; Flags: ignoreversion recursesubdirs createallsubdirs
;Source: "C:\Users\NIC\Desktop\Install\res\100_BL_G v4\*"; DestDir: "{app}\Map";Components: MAP; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "C:\Users\NIC\Desktop\Install\res\.NET Framework 4.0\dotNetFx40_Full_x86_x64.exe*"; DestDir: "{app}\.NET Framework 4.0"; Components:Framework ; Flags: ignoreversion recursesubdirs createallsubdirs
[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\RunApp\{#MyAppExeName}"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\RunApp\{#MyAppExeName}"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\RunApp\{#MyAppExeName}"; Tasks: quicklaunchicon
[Run]
Filename: "{app}\RunApp\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall skipifsilent
Filename: "{app}\.NET Framework 4.0\{#MyFrameWorkName}"; Description: "{cm:LaunchProgram,{#MyFrameWorkName}}"; Flags: nowait postinstall skipifsilent
3 компонента которые можно устанавливать по выбору. 1 главный компонент с exe файлом, с возможностью создания ярлыка на рабочем столе запуске приложения после установки. 2 компонент это просто папка с файлами там нет exe 3 компонент фрейворк (один экзешник).
Подскажите как сделать чтобы, например, когда мы хотим установить только компонент два, не было пункта (чекбоксов) хотите ли вы поместить ярлык на рабочих стол или запуск после установки(так как будет высыпаться ошибка, оно и понятно там нет исполняемых файлов). Эти пункты должны быть только для первого приложения.
Как сделать чтобы при выборе компонента 1 с компонентом 3(фрейворк) они ставились по очереди(те поставилось приложение, а далее идет установка фрейворка). Сейчас, у меня происходит просто распаковка файла фрейворка в директорию, но он не запускается.
Спасибо.