Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Do I need InstallScript MSI or not ?


7 replies to this topic

babric

babric
  • Members
  • 34 posts

Posted 11 July 2005 - 13:44

Hello !

I'm new in packaging.
I would like to build some packages :

user posted image


I will use InstallShield 10.5 Professional Edition.
I have to choose between Basic MSI or InstallScript MSI (and anything else ?).
But I don't know if I need InstallScript (InstallShield Help says that InstallScript MSI setups are less desirable to systems administrators because they require the use of Setup.exe :-/ ).

I will have to do some special actions in my setup :

First, I will have to uninstall ALL old versions not MSI-based (InstallShield 6.3). I saw that I'll need "Custom Actions" to do that.
And maybe I will need to reboot, and automatically launch my setup again. (because of locked DLL in windows 2000).

Then I will need, at the end of the installation, to launch a *.bat file (driver installation) and to launch an *.exe file (configuration of the network protocol).



Do you think I will have to select InstallScript MSI, or can I do it with the Basic MSI ?

Thanks !


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 11 July 2005 - 16:08

This can be done with Basic MSI. Avoid InstallScript MSI!

babric

babric
  • Members
  • 34 posts

Posted 11 July 2005 - 16:49

Wow ! you don't like InstallScript MSI ? :-)

Ok, I will follow your advice, but I have another question : (always another one...)


What sort of package would you build in this case (report to the picture to understand) :

I don't want to build patchs or updates. I just want 3 Packages (Package1, 2 and... 3) and if I have some modifications, I re-build my packages.

For example, I have 3 packages : Pack1_v1.msi, Pack2_v1.msi and Pack3_v1.msi.
(Pack1 and 2 are included in Pack3).

I install the Pack3_v1.msi.

Then, I modify something in the pack1 -> Pack1_v2.msi, Pack2_v2.msi and Pack3_v2.msi

Now, I want to upgrade the version I have installed :
I have 3 choices, install the Pack1_v2.msi, Pack2_v2.msi or Pack3_v2.msi. (Pack1_v2 is included in each ones).

What should I use ? What should be the package's type of my 3 packages ?
Major Upgrade packages ? Merge modules (included in .msi) ? That's my question in fact :-)

Thx if you can explain me how to choose it...

babric

babric
  • Members
  • 34 posts

Posted 12 July 2005 - 08:42

Ok, I didn't precise well :-)

First of all, I create 3 packages (which can be used INDEPENDENTLY) :
Pack1_v1
Pack2_v1 (which includes Pack1_v1)
Pack3_v1 (which includes Pack2_v1 - and consequently Pack1_v1)

HOWEVER
- Pack1 MUST be installed if you want to use apps included in Pack2 or 3 (That's why Pack2 & 3 include Pack1 !)
- Pack2 CAN be very usefull if you use apps included in Pack3 (That's why Pack3 includes Pack2)

For example :
- Pack1 is drivers for your video card (You need it if you want to use your video card)
- Pack2 is tools for your video card (°C, °F, fan control, etc...) (You need drivers if you want to control your card, so you need Pack1, which is included in the toolPack == Pack2)
- Pack3 is a game, you need drivers (Pack1) and Tools can be very useful, so they are included with the game (Pack2).

M1 : Just want to use Pack1_v1 (He just needs that because, for example, he is a game developper)
M2 : Just want to use Pack2_v1 (He is an overclocker)
M3 : Just want to use Pack3_v1 (He is a gamer, but maybe he would like to use the tools)

BUT, actually, these men don't want to have to find the last update-file or something else. They want to go to a website, look for the package they are using or they would like to use now, run it, and be sure they have the last version. That's why, at this day, I just want 3 packages, and NOT 3 packages + 3 upgrades/updates packages. (But maybe this could change in 1 or 2 years).

For example, Pack3 is less than 20MB, so the user could dl the last version without using to much bandwidth...

MOREOVER, if M1 installs the Pack1, and then the Pack2, and finally uninstall the Pack2 (or Pack1) I Want that the Pack1 (or Pack2) runs without problems.


Hope that you understand me :-)

Whatever, Thx for your help !

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 July 2005 - 12:32

The most robust way to bundle or chain multiple msi based setups is an external application (setup.exe) that will launch them in a row.

babric

babric
  • Members
  • 34 posts

Posted 13 July 2005 - 13:09

MMmmmh, ok...

And what do you think about this idea :

I build a global *.msi with all the components I want.
I apply an *.mst file to create the differents packages. (3 *.msi files)

>> I only have to modify the global package, and then I just apply the *.mst file to build the updated *.msi.

Example :

Global : global.msi
Pack1 : Pack1.mst + global.msi >> Pack1.msi
Pack2 : Pack2.mst + global.msi >> Pack2.msi
Pack3 : Pack3.mst + global.msi >> Pack3.msi

I change something in the global.msi : global2.msi

Pack1 : Pack1.mst + global2.msi >> Pack1.msi
Pack2 : Pack2.mst + global2.msi >> Pack2.msi
Pack3 : Pack3.mst + global2.msi >> Pack3.msi


But I don't really know how *.mst works, so do you think it could be possible ?

Thanks.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 13 July 2005 - 13:43

The problem isn't generating the 3 "flavors". This can easily be done using ReleaseFlags in InstallShield.
The problem is installing package 2 (i.e. driver and tools) and later update only the drivers using package 1.

babric

babric
  • Members
  • 34 posts

Posted 13 July 2005 - 15:12

Ok, you say I will have many updates problems, I understand.

But what is the best solution (according to you) if I want to have the most versatile solution, but with the least heavy files ?

You say (or, I understood) :

- Apply an *.mst before is not the best solution if I want to install package 2 (i.e. driver and tools) and later update only the drivers using package 1

- Apply an *.mst during the install is not the best solution if I don't want so heavy setup.exe file.

- Merge module are for components, not really for one package.

- ?????? I really don't know what can I do. sad.gif

I'm wondering if I wouldn't build my packages with multiple merge modules. (1 merge module / component of my packages).