Maybe can someone help me out.
Is there a way to install a patch (MSP) on a base msi where the product code has ben changed?
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
Just for the record i got this error:

Installer service because the program to be upgraded
may be missing, or the upgrade patch may update a
different version of the program. Verify that the program
to be upgraded exists on your computer and that you
have the correct upgrade patch.

Maybe someone had a solution
Answered 07/15/2009 by: Cybermage
Orange Belt

Please log in to comment
0
I'm not sure if you mean, you can't apply the patch manually (install MSI then MSP) or u mean you're unable to apply the patch to the base MSI to create a brand new MSI? i have a messy solution if u want to mingle with it...

Usually, MSP can be applied automatically to the base MSI....but somehow (maybe u changed the product code of the base MSI) it doesnt apply properly....

Install the MSI, take the Pre-Snapshot, Install the patch, take a Post-Snapshot...the captured files will be of updated versions. Now integrated these files manually into the base MSI replacing the old ones. The tasks looks easy but its not easy, depending how complex the MSI is.... you may need to extract the MSI into a wise or ism format to repackage....be careful with it...
Answered 07/15/2009 by: PackageExpert
Blue Belt

Please log in to comment
0
You can try to rename the GUID in HKEY_CLASSES_ROOT\Installer\Products\ with the original GUID

Also, in this key, the guid is inverted by section. Its hard to explain but I will give it a try :

Product : Orca.msi
Guid : {4F34C602-4D6D-470D-A2A0-59E4F25DDBF2}
Key : HKEY_CLASSES_ROOT\Installer\Products\206C43F4D6D4D0742A0A954E2FD5BD2F

As you can see, each part between - is inverted (mirror).
4F34C602 is 206C43F4
4D6D is D6D4
and so on...

Track down the orginal GUID of your .msi, rename the key and give a try.

I had the same problem with a package where the guid was modify in a .mst. Using BMC software distribution, it use the .msi product code to generate the uninstallation sequence and in this case, the uninstallation wasn't working.
Answered 07/15/2009 by: darkfang
Blue Belt

Please log in to comment
0
Darkfang,

You solution is interesting one but i do not like to installing patches in a live envirement.
But i keep it in mind to try it out.
harjind: I changed the product code of the orginal msi because i want to used it to "update" the orginal msi with a new MST.
I found now a the following solution so far so good.:

1) First installing the original vendor msi with admin point
2) Applying the path on the admin point.
3) Changing product key of the msi of the admin point.
4) Applying or creating a new transform with new settings including a upgrade code for deinstallation the orginal vendor msi.
5) Deploying the modifyed msi + transform
6) By deployment the orginal msi and transform wil be deinstalled the new msi + transform wil be installed.

So far it suits me but i'm open for other suggestions.
Answered 07/17/2009 by: Cybermage
Orange Belt

Please log in to comment
0
I'm just curious as to why you changed the ProductCode of the original vendors MSI in the first place?

By following the procedure that you just stated, surely you're going to be caught in the same situation the next time a patch is released ?
Answered 07/17/2009 by: michaelnowell
Second Degree Blue Belt

Please log in to comment
0
True,

I will keep the installpoint in archive so i can apply eventualy a new patch and i can change the product code.
But maybe it can be more effecient ......

ORIGINAL: michaelnowell

I'm just curious as to why you changed the ProductCode of the original vendors MSI in the first place?

By following the procedure that you just stated, surely you're going to be caught in the same situation the next time a patch is released ?


Let say you have the vendor msi installed with a mst on a pc.
You have to change things in a new mst and you want to (re) install the vendor changed mst
What i have experienced when i tryd. I have to deinstall the vendor msi with the original mst first.
Then i have to instal the msi with the changed mst on the pc.
The deinstallation of the vendor msi can be automated by the deployment tool.
In Zen very easy to do but in SCCM not so easy (and that's a understatement)
So we decided to let windows installer handle the deinstallation and NOT the deployment tool.
To accomplice that we changed the only product code of the vendor msi.
We make a new mst. In the mst we put a upgrade code to get rid of the original msi.
The modified msi will be installed with the new mst. The original untouched vendor msi wil automaticly deinstalled.

Hopes i make my motivations more clear.
Answered 07/17/2009 by: Cybermage
Orange Belt

Please log in to comment
0
If you're wanting to modify an existing installation that you have installed using a transform. You have a few options.

1. Using a deployment tool, uninstall the original MSI from the PC and re-install it again using your new transform. In SCCM you can either chain the uninstall to remove the original from within the SCCM packages program or use a Task sequence to perform the two actions (if you prefer not to chaing the programs).

2. Create a wrapper to do the uninstall and reinstall (e.g. a Wisescript, batch file or VBScript), but in using this you might not get the error reporting that you'd want, unless you code this into your script.

This would be you're preferred method for making changes to your MST

3. Replace the cached copy of the transform on the target PC and run a reinstall of the MSI. Unless you're using the GP option to place all transforms in a secure place, you can find the locally cached transforms in "C:\WINDOWS\Installer\%ProductCodeofMSI%\%TranformName%.mst"

In any way, you're better off not modifying the vendor MSI unless it's absolutely neccessary.
Answered 07/17/2009 by: michaelnowell
Second Degree Blue Belt

Please log in to comment
0
Is some time ago but i have recently look again and found a other solution i want to share on this forum.

i have recently used this solution:

Use the original vendor msi
Create a mst and change the upgrade code NOT the productcode
deploy this one with the deployment tool

When it nessary to distribute a changed mst use the changed upgrade code of the previeus mst.
The orginal msi will be installed with the new mst. The original untouched vendor msi with the old mst wil automaticly deinstalled. And with this way It is still possible to applying patches.
Answered 01/18/2010 by: Cybermage
Orange Belt

Please log in to comment
Answer this question or Comment on this question for clarity