Build Steps |
The section describes the basic steps which occur when an MSI is built. This may help you to understand what is occuring or possibly help diagnose a problem.
There are lots of options which may affect the steps mentioned below, however the main steps are:
The script will request MAKEMSI headers be loaded to make the "commands" available.
You may set some MAKEMSI options prior to loading the headers to alter how it functions or to modify default values (on the "PPWIZARD" command line).
Note that you will probably either have an "MSI" template (the "company.mmh" header uses "uisample.msi") or build the "base" from scratch.
Most MAKEMSI commands used will generate VBSCRIPT and you may also imbed your own VBSCRIPT code. This code when executed ("pass 1") will perform the desired manipulations of the MSI.
So just to make this plain, most commands are executed in 2 parts, the part that decides what needs doing (creating script) and when that sccript is executed later in pass 1.
Its possible for certain types of user errors to cause non VBSCRIPT to have been imbedded, any syntax error is very likely to be some sort of user error.
If this step fails in a unexplained way then try the diagnostic shortcuts!
At the end of "pass 1" if you have added files to the MSI that haven't yet been compiled then a compile takes place. If you added merge modules which haven't yet been compiles (a "late" merge) then a merge takes place at this time also.
This HTML report has a "validate files" button which will check the installed files against what is expected (it currently has some restrictions).
It will also update the add-remove "support information" such that clicking on the "readme" information will display the HTML report.
If you are adding the report to the MSI then a second pass ("pass 2") will be performed to generate code to add the file and to perform the required compile.