Q&A : Application Repackaging-Part 3

1.How do I make sure a complete uninstallation using a command
Use the property REMOVE
Eg: msiexec /x package.msi REMOVE =”ALL” /qb
2. How to set a property to an environment variable?
Use custom action of type 51 PropertyName and target [%EnvVarName] Eg: APP_PATH =[%PATH]
3.How to create an Internet (URL) Shortcut?
1.Create a URL file on your development computer and add this to a component.
2.Create a shortcut to point to this file.
The content of the .url can be like this:
4. What are the limits for a large MSI package?
Reference: Windows Installer Team blog
There are a couple of limits that you may hit when authoring a large, complex MSI package.
Total number of files
If your Windows Installer package contains more than 32767 files, you must change the schema of the database to increase the limit of the following columns: the Sequence column of the File table, the LastSequence column of the Media table, and the Sequence column of the Patch table. Note that transforms and patches cannot be created between two packages with different column types.
Total number of components
The maximum number of rows for the Component table is 65536.
This limit was discovered by Danish Waheed and posted on the WiX users mailing list. It has been confirmed by a Microsoft employee but hasn’t been officially documented yet.
Number of components per feature
There is a maximum limit of 1600 components per feature using Windows NT/Windows 2000 and a maximum limit of 800 components per feature using Windows 95 and Windows 98. There will be a ICE47 validation warning if your package is above this limit.
Depth of Feature tree
There is a maximum limit of 16 for the depth of the feature tree. If you exeed this limit you get a runtime error message “2701. The Component table exceeds the acceptable tree depth of 16 levels.” which is a bit misleading because the limit actually applyies to the Feature tree, not the Component tree (in my understanding there is no component tree in MSI). In a test with a feature tree 20 levels deep msiexec.exe even crashed instead of displaying an error message.
This limit has been reported by Danish Waheed on the WiX users mailing list. It doesn’t seem to be officially documented.
Number of disks or CAB files
For each disk or CAB file one row must be added to the Media table. Windows Installer packages are limited to a maximum of 80 Media table entries when installed using Windows Installer prior to version 2.0. The restriction of 80 Media table entries was removed with Windows Installer version 2.0.
Limits of the CAB file format
The only compressed file type supported natively by Windows Installer is the Cabinet (CAB) format. The following limits apply to this file format.
No one file in a CAB can exceed 2GB
Maximum size of all files in one folder (compressed) 2GB
Maximum size of a CAB file (compressed) 2GB
Maximum number of files in a single CAB 64K
You can avoid these limits by splitting your setup into multiple CABs, possibly up to 64K * 2GB, or by placing your application files on the distribution disk uncompressed.
Additional Limitations on Windows 95/98/Me
Windows Installer stores a lot of information about installed features and components in the registry. Because the size of a registry key is limited on Windows 9X, the following approximate limits apply:
Registry values are limited to 16382 on Windows 98 and Windows Me, and limited to 16371 on Windows 95. This effectively limits the number of components per feature to 817. The limit varies depending upon any additional space needed to accommodate optional parent features, which should placed in the same value.
The total size of a registry key and all its values is limited to 64 KB on Windows 95 only. This can limit the maximum total number of features and components in a product.
Windows Installer version 1.2 saves in-progress information as a registry value. This can limit the maximum number of features on Windows 95, Windows 98, and Windows Me. This limitation no longer exists with Windows Installer version 2.0 or later.
5.New and improved features in Windows Installer 4.5
* Multiple package transaction
* Embedded UI handler
* Embedded chainer
* Update supersedence resiliency
* Custom action execution on update uninstall


7 Responses to “Q&A : Application Repackaging-Part 3”

  1. 1 Gowri January 6, 2010 at 6:12 pm

    Excellent post …Great to know about many concepts in APplication Packaging.Keep writing…
    Happy new yera to ya as well 🙂

  2. 2 MSM March 12, 2010 at 12:15 pm

    Can you please post the link for Part 1,2 and all articles after Part 3 🙂

    This one is very helpful…!!! Thanks…!!!

  3. 5 sreenivas July 5, 2011 at 1:21 pm

    Hi Balsaraj………..Hru ?

    nice job ……

    please post the information regarding to wise package studio 8.0 and some examples for custom actions……..

  4. 6 s.e.suresh February 16, 2012 at 4:06 am

    it is useful to learn application packaging.send more and more topics followed by the application packaging.

  5. 7 Mano April 12, 2012 at 2:21 pm

    Hello Sir,

    I missed the part 1 & 2 Qns can you send me this email..mano8667@gmail.com

    Thanks in advance

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: