This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Patch vs Transforms
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 14, 2007
07:01 PM
Patch vs Transforms
Hi All,
I am confused in terms of the differences between patch and a transform...
I understand a transform file (mst) is a difference between your source and target MSI and also it allows you to customize your final MSI package but doesnt the patch work the same way , isnt the patch essentially contians the differences of previous and current installer?
any inputs are highly appreciated!!!
TIA
I am confused in terms of the differences between patch and a transform...
I understand a transform file (mst) is a difference between your source and target MSI and also it allows you to customize your final MSI package but doesnt the patch work the same way , isnt the patch essentially contians the differences of previous and current installer?
any inputs are highly appreciated!!!
TIA
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 15, 2007
02:12 AM
Here's how I think of them. Transforms are applied at install time - patches are (almost always) applied after the initial installation. Transforms can also be embedded in the .msi but patches can't. Also it's possible to create a patch that can be uninstalled but a transform can't without uninstalling the entire product.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 17, 2007
10:13 AM
It might be useful to refer to Heath Stewart's blog for more information - I know he talks about patching issues a lot, although I can't remember much about the distinctions between patches and transforms.
From an implementation perspective, a patch is implemented through transforms - any patch is a combination of metadata and a transform for every previous version it can target, plus any new file data (which transforms can only include externally). Furthermore, as klacounte says, (raw) transforms can generally only be used at install time, and become inextricably part of the installed product; the exception to both is as the implementation of a patch, where they can be installed and possibly removed at a later time.
From an implementation perspective, a patch is implemented through transforms - any patch is a combination of metadata and a transform for every previous version it can target, plus any new file data (which transforms can only include externally). Furthermore, as klacounte says, (raw) transforms can generally only be used at install time, and become inextricably part of the installed product; the exception to both is as the implementation of a patch, where they can be installed and possibly removed at a later time.
![](/skins/images/CC38E504FC9E1309DC48ACFEB4925670/responsive_peak/images/icon_anonymous_message.png)
Not applicable
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 18, 2007
08:41 AM
I believe the MSDN article on patches (http://msdn2.microsoft.com/en-us/library/aa370578.aspx) describes it pretty well:
Or to put it more simply:
Path = Transform + Cab Files + Metadata/Validation
Transforms play a huge role in the application of patches though.
A Windows Installer patch (.msp file) is a self-contained package that contains the updates to the application and describes which versions of the application can receive the patch. Patches contain at a minimum, two database transforms and can contain patch files that are stored in the cabinet file stream of the patch package.
Or to put it more simply:
Path = Transform + Cab Files + Metadata/Validation
Transforms play a huge role in the application of patches though.
![](/skins/images/CC38E504FC9E1309DC48ACFEB4925670/responsive_peak/images/icon_anonymous_message.png)