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
- :
- Re: QuickPatch question
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
‎Nov 02, 2009
10:21 AM
QuickPatch question
I have one basic project, lets say version 1.0.0. From inside Install Shield, I selected Tools -> Create QuickPatch. The wizard created a new project linked to the original, and I called it 1.0.1. Within this patch project, I again created a quickpatch, and created 1.0.2.
So on my test client, I install the original, then patch 1.0.1, then patch 1.0.2. Everything works as expected, and I see the patches listed in the Add/Remove Programs.
What is the Best Practice way of getting a new install going straight to 1.0.2, and not having to install the original, then patch, then patch ...?
So on my test client, I install the original, then patch 1.0.1, then patch 1.0.2. Everything works as expected, and I see the patches listed in the Add/Remove Programs.
What is the Best Practice way of getting a new install going straight to 1.0.2, and not having to install the original, then patch, then patch ...?
(5) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Nov 02, 2009
10:45 AM
After more tests, I see that each patch is included with the latest patch version.. so I can Install the 1.0.0, and patch directly to 1.0.2. This is OK, but it would still be nice to go directly to 1.0.2 without forking a whole new project. Is that possible, and how?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Nov 04, 2009
11:40 AM
As long as your second patch is created from the first patch project, it should be possible to go from 1.0.0 -> 1.0.1, 1.0.1 -> 1.0.2, or 1.0.0 -> 1.0.2. Note that the requirement of creating the second patch from the first patch project is due to how patching is implemented by Windows Installer. Since a patch is basically the difference between two MSI packages, to do anything more than jump from one version directly to another requires each possible difference that could be encountered to be in the patch (though MSI 3.1 and newer provide functionality to eliminate this requirement, Express does not expose this functionality).
More information on patching can be found in the following articles:
What's in a Patch
How Patching Works
Patch Applicability
More information on patching can be found in the following articles:
What's in a Patch
How Patching Works
Patch Applicability
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Nov 04, 2009
12:37 PM
josh - thanks for the response. That makes sense, but let me confirm with this new example. Imagine these events in chronological order,
Now Customer C comes along, how does he get the latest version?
Well I know the answer, they will run the 1.0 installer, then apply the 1.2 patch.
But is there any way to have Customer C directly install 1.2, with no patch?
I have a product, I released it at version 1.0, I put the setup.exe on my website.
Customer A downloads 1.0 and installs it.
Customer B downloads 1.0 and installs it.
I create a Quickpatch to generate Update.exe, which is version 1.1
Customer A downloads 1.1 and installs it.
I create a QuickPatch (based on the first Quickpatch), to generate Update.exe, which is version 1.2. I remove Update.exe (1.1) from the website, and put 1.2 up.
Customer A downloads 1.2 and installs it, so does Customer B.
Now Customer C comes along, how does he get the latest version?
Well I know the answer, they will run the 1.0 installer, then apply the 1.2 patch.
But is there any way to have Customer C directly install 1.2, with no patch?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Nov 06, 2009
11:56 AM
It is possible to have a full 1.2 version (this would be termed a 'minor upgrade' which can serve both as an upgrade and as first time install package). However, because authoring minor upgrades is a rather advanced scenario (due to the rules imposed by MSI), and because Express editions hide a number of MSI details needed to author minor upgrades (to make common authoring scenarios easier), it is not technically possible to author a minor upgrade with InstallShield Express.
You can author a major upgrade with Express, which can be used as a first time install or an upgrade install. Note though, that major upgrades will uninstall any existing product versions located on a target machine and then install the new version (minor upgrades install over the existing version without uninstalling). Major upgrades are created by changing the Product Code and Product Version in your project, then adding an upgrade item in the Upgrades view that points to the previous version to uninstall.
You can author a major upgrade with Express, which can be used as a first time install or an upgrade install. Note though, that major upgrades will uninstall any existing product versions located on a target machine and then install the new version (minor upgrades install over the existing version without uninstalling). Major upgrades are created by changing the Product Code and Product Version in your project, then adding an upgrade item in the Upgrades view that points to the previous version to uninstall.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Nov 06, 2009
12:50 PM
Well put, thanks - that answers my question.