0
votes

So basically i've create an installer with inno setup, it works wonders and all of that. The issue is the fact that i've developed the following [Components]

Name: "LoremIpsum"; Description: "LoremIpsum"; Types: Server User; Flags: fixed
Name: "Java"; Description: "Java Runtime Enviroment"; Types: Server User; Flags: fixed
Name: "banco"; Description: "Database"; Types: Server
Name: "banco\padrao"; Description: "Standard Database"; Flags: exclusive; Types: Server
Name: "banco\manual"; Description: "Manual Database"; Flags: exclusive; Types: Server
Name: "banco\fullrestore"; Description: "Full Restore Database"; Flags: exclusive; Types: Server
Name: "banco\backupdata"; Description: "Database with Backup Data"; Flags: exclusive; Types: Server

Then, in the installer wizard when you're in the part where you choose the type of installation, there are two types, the basic one which doesn't include the "banco" part, and the complete one which is the one that i provided the code. If you choose the complete one it looks exactly like the full one except for the name of the type of installation. Of course if you're in the basic one and mark one of the 'banco' options you'll be automatically transfered to the full installation, but i wan't it so that if you choose the full option one of the 'banco' options should be marked by defautl, i figured that it should be the father 'banco' and son 'banco/padrao' but i can't figure out how to do it. I've already looked in the documentation looking for some sort of "Deafult" flag, which i couldn't find. I assume there should be a way to do this built in the app, i'd rather not have to do the changes with actual code since i'm not really good at pascal which is needed for it, but i wouldn't mind if the solution involved it. Mostly what i wan't is some sort of "Default" flag to appoint into one of the exclusive options. Does anyone know of such a function?

The following is the [Type] section

Name: "User"; Description: "Basic install"; Flags: 
Name: "Server"; Description: "Full install" ; Flags: iscustom
1
So maybe you should show us your Types section too.Martin Prikryl
Sorry, i'll add that inMatheus D. Lima
And which one is the "basic" one and which one is the "complete" one? You should translate the names in English for us. But with my bad Spanish, I can tell then neither. So I got lost probably.Martin Prikryl
Just transtaled it, sorry for the trouble @MartinPrikrylMatheus D. Lima
Selecting a type with iscustom flag has no effect on selected components. So either you need to have three types: "basic", "default server" and "custom" (iscustom). Or you need to select the default server component programmatically.Martin Prikryl

1 Answers

1
votes

@MartinPrikryl comments got me thinking, and with some time i realised that he was right, just that his solution didn't do what i want. The problem i had as a design one, i wanted thing to look more "pretty" for the end user. I then had a breaktroguh, i realised that i didn't need 2 types of instalations, just one which is custom, then i did just that. In the end the [Types] was just

Name: "User"; Description: "Basic install"; Flags: iscustom

and that was it, the installer now looks like i want it to, not what i wanted originally but i think it's better than what i had in mind. I also removed the types from the old "server" install leaving them typeless, and removed the server type also from the fixed ones. In the end it worked out allright. Special thanks to Martin since i wouldn't have tought about it without his input.