Hi there,

I have an app where we have 3.7 and another update that someone captured. It updates 3.7 to 3.71 Both are MSI's. What's the best way to merge the two into one msi?


Thanks,
eDoc
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
There are several ways to do this. First riddle me this:
-Is either package already in production?
-Is the first MSI a vendor MSI?
-How complicated is the second update MSI?
-Do you have the project files for either MSI?
-Does it have to be one MSI , or can one be an MSP or MST?
Answered 05/18/2006 by: turbokitty
Sixth Degree Black Belt

Please log in to comment
0
- The first MSI is in production
- The first MSI is not a vendor MSI, we built it here.
I believe it is a product of many months of updates
- Second MSI was captured from a vendor patch (not sure why).
I do have the vendor patch, but it says the product is not installed
when I try using it. It's checking somehow (prod codes maybe)
and I can't seem to get it to work.
- We want one msi in the end

Side note/question;
This is twice now I have received a vendor patch file and inherited an old MSI. I can't apply the patch because it can not recognize that the app is in fact installed. I assume it's because the code(s) don't match up. I have looked around for info on this but working with info on this situation is broad, sporadic and confusing. If I have an old MSI that someone captured and the vendor releases an MSP, how can I make the MSP match the in-house install?


Thanks for the help,
eDoc
Answered 05/18/2006 by: edocshare
Orange Belt

Please log in to comment
0
Basically, you can't. This is why you never repackage an MSI. It breaks all the vendor's internal logic and makes patches stop working.

You could change the product and upgrade code in your repackged MSI to match the vendor MSI. This would make the patches see the install of the application, but the patch would fail. The patch needs a matching database too and your databases no longer matches once you've repackaged an application.

If the repackaged MSI is already in production, you're hosed. You'll have to repackage each patch (or group of patches) as they come from the vendor. I suggest capturing them and making MSP's (patches) out of them. If you absolutely have to have one MSI, you'll have to repackage the vendor MSI (or your repackaged MSI of the vendor MSI) with the patches into a new, larger MSI.

How many PC's are affected? If this app has a lot of continuous updates, you may be better off pulling the repackaged MSI off the machines and replacing it with the vendor MSI. Then you can just patch the MSI with the vendor patches as they come in.
Answered 05/18/2006 by: turbokitty
Sixth Degree Black Belt

Please log in to comment
0
Hmm... there are way to many machines to recall it. I think I'll extract the files from the patch, edit our last MSI and add/replace the new files or maybe capture the MSP


Thanks for the help,
eDoc
Answered 05/18/2006 by: edocshare
Orange Belt

Please log in to comment
0
Well, opening up the old MSI and adding the patch files won't work. When you try to deploy it in production, it will think it's already installed and just crap out.
Your best bet is option 2. Either create an MSI from the capture, or better yet, an MSP that points to the repackaged MSI.
Answered 05/18/2006 by: turbokitty
Sixth Degree Black Belt

Please log in to comment
0
I have sucessfully captured the MSP and created an MSI that works. It does bring the prev ver up to the latest and all works fine. But, they want a single MSI if possible.

Without going way back to the beginning and starting with the vendor MSI, I think I am hooped too.
Answered 05/18/2006 by: edocshare
Orange Belt

Please log in to comment
0
ORIGINAL: turbokitty
Well, opening up the old MSI and adding the patch files won't work. When you try to deploy it in production, it will think it's already installed and just crap out.


I meant, if I extract all the files from the MSP file, then open the MSI and create a new MSI (update or upgrade). This would work, I did it a few days ago.

Problem with this package here is that the MSP has over 100 files and many registry entries. This would take a long time.
Answered 05/18/2006 by: edocshare
Orange Belt

Please log in to comment
0
try msimerge.exe from the SDK .
Answered 05/22/2006 by: jmcfadyen
Fifth Degree Black Belt

Please log in to comment
0
OK, I am now using the original vendor msi. I have created a transform for it, it's working great. After the initial install, I applied the vendor patch and it worked great.

Now, is there a way to merge the patch with the vendor msi so we only have one msi to distribute?


Thanks,
edoc
Answered 05/23/2006 by: edocshare
Orange Belt

Please log in to comment
0
Do an administrative installation of the MSI and then patch that one, that should solve your wish

msiexec /a <path to msi> TARGETDIR=C:\temp\admin
msiexec /p <path to msp> /a C:\temp\admin\<msi>
Answered 05/23/2006 by: AngelD
Red Belt

Please log in to comment
0
That doesn't merge the msp into the msi to create ONE new msi. I am looking for a single msi that includes the patch.

edoc
Answered 05/23/2006 by: edocshare
Orange Belt

Please log in to comment
0
Yes it will
if you would have a different product, just change the product code
Answered 05/24/2006 by: AngelD
Red Belt

Please log in to comment
0
Hmm.. ok, sorry. Can you elaborate a bit on that process?

After you execute:

msiexec /p <path to msp> /a C:\temp\admin\<msi>

what happens? What do I end up with?

What do you mean, "if you have a different product product or change the code". If I change the code, the patch won't work ???
Answered 05/24/2006 by: edocshare
Orange Belt

Please log in to comment
0
If you patch an administrative msi you will get a new msi with the patch included.
the original msi will have the same product code as the patched one.

if you would like to have an new product (including patch) change the product code in the patched msi so this will install over an existing installation.
Answered 05/24/2006 by: AngelD
Red Belt

Please log in to comment
0
sorry, do NOT change the product code, that would put you in the same position as when you started this thread for the next patch from the vendor. Sorry if that misslead you in any way

It should be enuf with the administrative installation.
Answered 05/24/2006 by: AngelD
Red Belt

Please log in to comment
0
OK, tried it and it worked great. Except, it installed several DLL's to the root of the C drive. I guess now I would have to edit the package and move those DLL's to the system directory.

Strange that it would do that because the original installations do not do that.


Thanks
Answered 05/24/2006 by: edocshare
Orange Belt

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