Isolation of a File: Two Ways in One MSI
This tip is not actually on explaining how to do Application isolation, but to describe a way to do Application isolation of one file by both .local and .manifest in the same MSI.
Application Isolation is a concept which is described in various articles. One of them is by Vijay: Application Isolation: Basics and Directions
Generally you would have read that after isolation is done, we should not modify the MSI. So how to do .local and .manifest in the same MSI. Actually you would be thinking: "What is the need to do both types in the same MSI?" This is because, recently, I came across a situation in which we needed to do isolation of a file for installation of application in Windows 2000 through .local method and for installation in Windows XP and Vista through .manifest method. This was needed to be done through same MSI.
This is the solution. Create a .msi file with .local isolation method for windows 2000. Then create another .msi file with .manifest isolation. Note the visual difference of .manifest isolation file and the base MSI. Make all the differences seen in this to the .msi which was created with .local isolation. Then compile it. This will not get corrupted. Only the ones with .manifest isolation if recompiled again get corrupted. So take care of this and you can then conditionalize the components to be installed for 2000, XP or Vista...
- Login or register to post comments
- 1529 reads
- Printer-friendly version
















Nice Tip , but
Try this way you might find this shorter and better.
1)Create the manifest for the file to isolate.
2)Remove any Advertising information of the dll from the tables and registry information from registry table.
3)Condition a component to install for Windows XP/Vista the manifest and for Windows 2000 the .local file.
For creating the manifest, you can try this tool , http://www.mazecomputer.com/sxsv2.htm.