The Microsoft® Windows® Installer (free) is mostly driven by tables.
These tables can be exported into text files, or imported from Tab delimited text files.
Thus the setup process of your products is greatly facilitated.
You can create this tables on the fly and import them in the MSI, then create the DDF
files that will in their turn create the CAB files.
This means you can automate the packaging of your products by creating on the fly the
tables that will change for each packaging.
To import the table use MsiDb.exe (provided with the Windows installer SDK).
To validate the packages use Orca or Msival2.exe (both are provided with the Windows
installer SDK).
The .cub file darice.cub is also provided with the SDK.
This file contains the ICE (Internal Consistency Evaluators) custom actions needed by
Msival2.exe to perform validation.
See more discussions and posts about MSI:
Replacing
Non-versioned Files User Data with companion files
New
tools to Import VBS JPG - Unable to place file in stream - MSIDB
MSM
Validation - ATL.MSM - Documentation
Remove
registry info entries for all users in system or just current owner
ARPPRODUCTICON
OK for XP not for W2K Add/Remove Programs
Msidb
Command Line Folder Path MSI name limitations
Do
NOT Associate Extension set flag file types as No Open in Verb Table
Property
for All Users Shared Documents or CA?
File
Hidden Attribute after installation - Source in CAB files
260
characters limit in shortcut's targets Windows not MSI/Setup Limitation
Example of a Welcome dialog box:
\
A partial or complete application reinstallation might be required if any files or registry entries associated with any feature have become corrupted or are missing. See more MSI dialogs...
Consider about 3 types of MSI tables:
Developing the code to create this tables on the fly may take some time... but you will be satisfied of your efforts when you see you can package your product in less than 5 minutes.
Localizing a Microsoft® Windows® Installer package requires modifying the strings displayed by the user interface and may also require adding or modifying product resources. For example, localization may include the addition of international DLLs and localized files to the product.
This is how your DDF files to create all the necesary CAB files may look like:
.Option EXPLICIT
.Set Cabinet = off
.Set Compress = off
.Set MaxDiskSize = CDROM
.Set ReservePerCabinetSize = 6144
.Set DiskDirectoryTemplate =
"D:\Development\dscan_code\Installation\MSI\DSCAN\English\Disk1"
.Set CompressionType = MSZIP
.Set CompressionLevel = 7
.Set CompressionMemory = 21
.Set CabinetNameTemplate = "NUCLEU~1.CAB"
.Set Cabinet=on
.Set Compress=on
"D:\Schneider\Development\dscan_code\Installation\MSI\SETUP\DSCAN\English\Install\Nucleus\4_others.xyz"
"F40_4_others.xyz"
.....
....
...
..
.
This is how your batch file to create all the necesary CAB files may look like:
@echo off
ECHO Use this PackageDscan batch file to make new cab files.
ECHO DDF file names are not limited in length.
ECHO CAB file names must not be over 8 characters
ECHO Press CTRL-C to cancel.
Pause
del
"D:\dgschnei\CD\Portfolio\Development\dscan_code\Installation\MSI\DSCAN\English\Disk1\*.CAB"
"MAKECAB.EXE" /f
"D:\dgschnei\CD\Portfolio\Development\dscan_code\Installation\MSI\DSCAN\English\DDF\BIN_1.ddf"
.....
....
...
..
.
MSIEXEC's Normal behavior is to launch multiple instances of itself; during a normal install you can expect to see 6-7 different instances of it; usually no more than 3 or 4 concurrently.
For more information:
Importing VBS JPG - Unable to place file in stream, Replacing Non-versioned Files - User
Data, ProgID table produces error during run time - Validation, Remove registry info
entries for all users in system or just owner?, MSM Validation - ATL.MSM, and more... see
my posts with ContactEZ.net on group:microsoft.public.platformsdk.msi
Windows Installer (Microsoft)
Tek-Tips
Forums member name dgschnei
Some keywords you can use to search topics: instmsiW.exe, orca, Msival2, darice
About me and my activities since 1995 - Developing solutions that really help - No gimmicks | ||
Participation on Google Participation on Yahoo! Tek-Tips Forums dgschnei |
Listed since 1996 ixquick International Services Vivísimo platform sdk dgschnei |
Cooperation on Google About Me Gifts Home Decoration |
Tek-Tips Forums, and platform sdk (member name dgschnei).