Go Back   FileForums > Game Backup > PC Games > PC Games - CD/DVD Conversions > Conversion Tutorials

Reply
 
Thread Tools Display Modes
  #1  
Old 04-06-2016, 23:58
Prince4 Prince4 is offline
Registered User
 
Join Date: Mar 2015
Location: India->Delhi->Rohini
Posts: 119
Thanks: 100
Thanked 19 Times in 15 Posts
Prince4 is on a distinguished road
Post Component Selection then extraction?

I know there could be a Thread to this but i'm in way too curious to start another.

-> How can i have a component selection in a inno setup which then extracts particular archive or a particular file in it?

Details :

Like i created a installer which i want it to show some options like :
Component A
Component B
Component C

Component A = Setup-1.Rpk
Component B = Setup-2.Rpk
Component C = Setup-1.Rpk + Setup-2.Rpk

I just want the user to chose one of the component so then the installer extracts the particular archive or particular files in the archive.

-------------------------------

Like there's in Max Payne 3 Repack by R.G. Origami.
Reply With Quote
Sponsored Links
  #2  
Old 05-06-2016, 01:36
vint56 vint56 is offline
Registered User
 
Join Date: May 2011
Location: almaty
Posts: 52
Thanks: 118
Thanked 55 Times in 31 Posts
vint56 is on a distinguished road
Prince4 ISDone0.6final Script ISDone_Example
Code:
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application

[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: Component; Description: Component Selection; Types: full; Flags: fixed // Component 0
Name: Component\a; Description: Component - A; Flags: exclusive;  // Component 1
Name: Component\b; Description: Component - B; Flags: exclusive; // Component 2
Name: Component\c; Description: Component - C; Flags: exclusive; // Component 3

[ code]
 Comps1:=0; Comps2:=0; Comps3:=0;
#ifdef Components
    TmpValue:=1;
    if IsComponentSelected('Component\a') then Comps1:=Comps1+TmpValue;     //Component 1
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Component\b') then Comps1:=Comps1+TmpValue;     //Component 2
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Component\c') then Comps1:=Comps1+TmpValue;    //Component 3
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Component\d') then Comps1:=Comps1+TmpValue;    //Component 4

#endif

If IsComponentSelected('Component\a') then
begin
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-1.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
end;

If IsComponentSelected('Component\b') then
begin
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-2.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
end;

If IsComponentSelected('Component\c') then
begin
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-1.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-2.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
end;

Last edited by vint56; 05-06-2016 at 01:54.
Reply With Quote
The Following 3 Users Say Thank You to vint56 For This Useful Post:
ffmla (22-09-2016), Prince4 (05-06-2016), Simorq (23-12-2017)
  #3  
Old 05-06-2016, 01:48
Prince4 Prince4 is offline
Registered User
 
Join Date: Mar 2015
Location: India->Delhi->Rohini
Posts: 119
Thanks: 100
Thanked 19 Times in 15 Posts
Prince4 is on a distinguished road
can you please comment it in English BTW Thanks for the Help
Reply With Quote
  #4  
Old 22-09-2016, 10:35
ffmla ffmla is offline
Registered User
 
Join Date: Nov 2014
Location: Digital world
Posts: 110
Thanks: 523
Thanked 62 Times in 40 Posts
ffmla is on a distinguished road
Question Components selection progressbar info

Quote:
Originally Posted by vint56 View Post
Prince4 ISDone0.6final Script ISDone_Example
Code:
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application

[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: Component; Description: Component Selection; Types: full; Flags: fixed // Component 0
Name: Component\a; Description: Component - A; Flags: exclusive;  // Component 1
Name: Component\b; Description: Component - B; Flags: exclusive; // Component 2
Name: Component\c; Description: Component - C; Flags: exclusive; // Component 3

[ code]
 Comps1:=0; Comps2:=0; Comps3:=0;
#ifdef Components
    TmpValue:=1;
    if IsComponentSelected('Component\a') then Comps1:=Comps1+TmpValue;     //Component 1
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Component\b') then Comps1:=Comps1+TmpValue;     //Component 2
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Component\c') then Comps1:=Comps1+TmpValue;    //Component 3
    TmpValue:=TmpValue*2;
    if IsComponentSelected('Component\d') then Comps1:=Comps1+TmpValue;    //Component 4

#endif

If IsComponentSelected('Component\a') then
begin
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-1.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
end;

If IsComponentSelected('Component\b') then
begin
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-2.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
end;

If IsComponentSelected('Component\c') then
begin
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-1.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
  if not ISArcExtract    ( 0, 0, ExpandConstant('{src}\Setup-2.Rpk'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\'), notPCFonFLY{PCFonFLY}) then break;
end;
Hi,
thanks for info,
In the componenet section how to use records.ini for smooth progress bar.
If i choose single component.-->record.ini created =No Problem
but by choosing multiple file-how to make record.ini file..
please help,

Thanks in advance.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Component Argument Values REV0 Conversion Tutorials 5 06-01-2018 11:00
F.E.A.R. - Extraction Point Whos_Ur_Paddy? PC Games 18 22-12-2009 14:27
Help with F.E.A.R. Extraction Point Mike Moody PC Games 9 05-10-2007 16:18
Mod Chip Selection PS2Delight PS2 Games 1 19-02-2005 10:47
s-video vs component av - which to use? BlackFlash PS2 Games 1 12-01-2003 06:19



All times are GMT -7. The time now is 21:09.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, vBulletin Solutions Inc.
Copyright 2000-2020, FileForums @ https://fileforums.com