General Chat Thread, MSI's :) HEEELLLLPPPP in General; Originally Posted by MrHappy
fancy puting a 'how to' document togeather?
You cant really as every peice of software is ...
14th January 2008, 05:03 PM #16
You cant really as every peice of software is differant, but basically your looking at;
Originally Posted by MrHappy
How does the software work, does it communicate with a server? If so where does it store its settings? Does it have any other settings that need changing, again where?
For the above you can either guess, or use Regmon and Filemon to watch what gets written when you edit the config page of the software. Make a note of what, usually this will be in the registry so, as ive said, i use the registry GPO addon. If you cant use this then WinInstall has the ability to change/add reg setting. Or even a script will do the job.
Usual place for setting are;
registry - CU/software/[manufacturer]/[app name]
registry - LM/software/[manufacturer]/[app name]
%userprofile%\app data\[manufacturer]\[app name]
Now you've got the settings sorted you need to know does it need write access to any files and folders, or even registry as ive occassionally found, for temp files etc? Again Regmon and Filemon. I generally use CACLS in a script for this, but again you can use WinInstall iirc, to set the perrmissions on the folders. I use the GPO addon for perrmissions on reg keys.
Now hopefully you've got a program which will run and pull all the correct settings. Now time to take out any unwanted features like SplashScreens or file accosiations. This is usually achieved by editting or transforming the msi, i prefer to use orca for this. http://www.appdeploy.com is your friend here and will tell you exactly what to change. Think of the MSI as instructions on how to install the package which is (usually) contained within itself. ORCA lets you view these instructions (or tables as you will see when you open ORCA), so for example;
"Splashscreen = true" can be changed to false, giving you the obvious result.
You can write changes to the MSI with ORCA, or you can create a "transform file" which you link to the MSI in GPMC. The tranform file simply overrules any of the MSIs instructions you have changed. To transform in ORCA;
Import the MSI
Drop down one of the toobars and find "Generate Transform" (sorry i cant remember which toolbar it is) - make sure you perform this step now or else it wont work.
Make your changes to the tables
Save the transform .mst
One consideration is remembering when things execute. Scripts can run at computer Startup or user Logon. So if you need to point the program at a server share of the settings.ini or a database for example you have to make sure that when the MSI is executed it can see the file. If you have pointed it by use of a mapped drive letter it will not be able to see the file as drive mappings happen at Logon, while installing software happens at Startup ie before the drive is mapped. In this case you must use UNC paths ie \\server\share
But wait there, step back a second and think "Do i need to change any settings, or does the program work perfectly well as it is?"
If it does then all you need to do is deploy the package. But what if it doesnt come as an MSI?
If it comes as an EXE the likelyhood is the MSI is contained within it. To extract the MSI use 7zip or run a network/admin install of the app - usually done by running "setup.exe -a" from cmd. iirc iTunes is like this and actually contains seperate MSIs for both iTunes and quicktime within its setup.exe
If you find there is no MSI then you have 2 options;
Make a new MSI by using Winstall, either manually or by use of the before and after snapshot feature.
Or we can "wrap" the exe up in an MSI using WIWW, assuming the exe supports the silent switch - usually "setup.exe /s" or "/vs" or "/silent" or "/verysilent". This can sometimes be case sensitive.
Baically all you do with WIWW is point it to the EXE, tell it which switch to use to install, and which to use to uninstall (if availible) and "wrap it up", putting the newly created MSI in the same directory as the original exe and any cab files etc.
Again www.appdeploy.com will help you here.
The way i approach making MSIs is to look at the job as 2 steps; Getting the software deployed, and getting the settings done. As ive said i use the GPO addon for registry, and tbh you rarely need to change files so i generally focus on getting the app deployed and working at a basic level first, before moving onto sorting out the settings. But as you'll find you will probably stumble accross the settings part of the job as you are working out how to deploy it.
Last edited by j17sparky; 14th January 2008 at 09:59 PM.
14th January 2008, 06:21 PM #17
- Rep Power
Hiya j17sparky thats some very good reading many thanks...
I am spending all day Tuesday playing around with WinInstall what FUN
14th January 2008, 08:41 PM #18
in no way shape form or otherwise is this statement true
Once you get your head round it making MSIs is a breeze.
It is the ultimate geekdom to do this - the chances of getting a return on intellectual investment is so slim that only a determined geek would do it
If you think you've saved time by doing this - you need a reality check!
Or - pop off to see Mr Hawking at Cambridge and ask him for a job
14th January 2008, 09:43 PM #19
- Rep Power
14th January 2008, 10:02 PM #20
I don't mind MSI repackaging/authoring. To make a good MSI you need to know, or at least have a good idea what should and shouldn't be captured and included in the package. A comprehensive exclusion list will certainly help (see appdeploy for exclusions). On top of that, there are plenty of MSI tricks which you tend pick up over time/experience. The MSDN and appdeploy sites are invaluable packaging resources. I use a combination of Wise Package Studio and Orca.
If repackaging is oversimplified, you risk producing MSIs that have the potential to break other applications, or parts of the OS.
14th January 2008, 10:34 PM #21
Must agree with those that repackaging to make MSIs is not a breeze. I've repackaged more than 200 education titles over the last few years (some with AdminStudio but most with Wise) and I would say that the breakdown of difficulty and time is roughly as follows;
15% - Trivial (30 mins to 1 hour)
45% - Moderate (1 to 2 hours)
35% - Difficult (1 to 2 days)
4% - Very Difficult (up to 1 week!)
1% - Not possible/practical
My personal view is the SIMS .NET should not be re-packaged partly because of the issue with regular updates and partly due to it's relatively complex nature and .NET dependence.
Having said that, here is a SIMS MSI creation utility.
EDIT: I've looked at the SIMS MSI mentioned above and it does appear to be a partially repackaged installation. I would suggest very thorough testing before using in a production environment.
Last edited by ajbritton; 14th January 2008 at 10:46 PM.
15th January 2008, 12:35 AM #22
- Rep Power
Has anyone repackaged ALAN/ESM exam software yet? If so what software did you use?
I have created a MSI of it but after the installation it keeps coming up with a DLL error, I have tried 4 times all with the same result...
I have made sure that the PATHs needed are correct in the registry.
By ajbritton in forum Windows
Last Post: 10th April 2006, 04:13 PM
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)