/build/static/layout/Breadcrumb_cap_w.png

Application repair after upgrade

Hi there!

I have a little strange problem.
I have done a lot of packages and now it's getting time to do some kind of upgrades to them.
In the latest case was it only some registry settings that has been added.
I have maked an "Major Upgrade" in AdminStudio, so it will remove the previous version if it exists.

When I install the package (manually) on a clean PC it works fine, but when I installs it on a PC thats already has the previuos version of application the installation works fine, but when I start the application it want to repair.

I have maked a logged MSI-installation, and noticed that i got "Action: Null" on some components (Redistributables in this case) when I installs it on a PC that has the previuos version.

I get "Action: Local" on the same component when I installs the new package on a clean PC.

The application works after the repair, but it is a little annoying that it needs to repair a component that is supposed to be intalled from the begining.

I noticed in the event viewer that the component mentioned there doesn't even exist in the component table.
I also looked for the GUID of the Redistributales, but they don't either have the mentioned ID.

Thanks!

/Jonas

0 Comments   [ + ] Show comments

Answers (12)

Posted by: nheim 17 years ago
10th Degree Black Belt
0
Hi Jonas,
have you checked the sequence # of the 'RemoveExistingProducts' row in the 'InstallExecute' table. Some vendors (like Wise) put this sequence at the very end of table and this removes components which are meant to stay on the system.
If this is the case, put it right before 'InstallInitialize'.
Regards, Nick
Posted by: jonasm 17 years ago
Blue Belt
0
Hi Nick!

Thank you for your fast reply!

I took a look in the sequences in my Adminstudio, but "RemoveExistingProducts" (seq # 1410) is already just before the "InstallInitialize" (seq # 1501) there.

Any other suggestions?

/Jonas
Posted by: venki_msi 17 years ago
Senior Yellow Belt
0
During repair process, just cancel the repair and go to startmenu> run> eventvwr> applications and check for MSI error, it will tell for which component and key file it is going for reapir..

normally upgarde apps go for repair, of below cases
1) becuase of isolation
2) due to font components
3) improper seqencing of Remove existing product..

Thanks,
venki.
Posted by: jonasm 17 years ago
Blue Belt
0
Hi Venki!

Thanks for your reply.

As I mentioned above does not the component in the MSI Error log exist in the component table.
The place where it usually says what keyfile/path that has been triggered, there is only empty...

/Jonas
Posted by: venki_msi 17 years ago
Senior Yellow Belt
0
is it a captured application or vendor MSI?
How did the feature strcuture looks.. is it single feature or components are organised in to various features?

Did msi is having any empty components? or component with null or improper GUID..
Posted by: jonasm 17 years ago
Blue Belt
0
Hi there!

It is a captured application with only one feature, and about 60 components in that feature.
There is no empty components (what I can see), and I assume that InstallShield Adminstudio has created correct GUID's for the components. When I look in the component table in Direct Edit mode, the GUID's looks right to me.

/Jonas
Posted by: jonasm 17 years ago
Blue Belt
0
Btw... It works fine if I uninstalls the old application first, and installs the new one afterwards.
But all users doesn't have the old version, so I can't set it in the package to remove.
And I think it doesn't work either while the installation uses the MSI-engine, so the uninstallation can't run at the same time.

/Jonas
Posted by: viswakar 17 years ago
Senior Yellow Belt
0
Hi Jonasm ,

Did u check for the MSI log and verify if the earlier version is upgrading properly . Check the upgrade table for the Actionproperty, u need to have a action property associated with the upgrade .

Cheers ,
Posted by: nheim 17 years ago
10th Degree Black Belt
0
ORIGINAL: jonasm

Btw... It works fine if I uninstalls the old application first, and installs the new one afterwards.
But all users doesn't have the old version, so I can't set it in the package to remove.


Hi Jonas,
that's exactly what the upgrade table is used for: To search for the package to upgrade. If it's there, its being removed by 'RemoveExistingProducts'. You don't have to bother about this, its a built in function.

It seems to me, that you are overwriting parts (components) of the old installation, but not all. If a component with its unique GUID is allready installed by the old app, it wont be installed again. You can check this in the log.

Make sure, the old app gets uninstalled and it should work.

Regards, Nick
Posted by: Secondlaw 17 years ago
Third Degree Blue Belt
0
I could be wrong but...

Each component should have a keypath set. You're installing various versions of certain files over those component keypaths. Example...

Package1 contains xxx.dll 1024k v2.2.2
Package2 contains xxx.dll 1037k v2.2.3

Now you click on the shortcut to launch the application. Windows installer says, "wait a minute... xxx.dll (keypath file) is no longer 1024k and v2.2.2, we must repair the application. That is why I believe you're running into this issue.

That is why when you uninstall the old app, the new one installs without issue.
Posted by: jonasm 17 years ago
Blue Belt
0
Hi there everyone, and thank you for your replys.

This is the message I get in the Event Viewer. As you see there is a component number (that does not exist in my package) and the line saying what key is just empty.



It usually works with this upgrades.

I will take a look on the file replacements, but in this case is it only two files that has been changed and some registry settings has been added.

/Jonas
Posted by: nheim 17 years ago
10th Degree Black Belt
0
Hi Jonas,
look for the error in the log file. Go to the end of it and scroll up to the part, where the property variables begin. Maybe their is a rollback, then you have to scroll up further until you see the part, where the error occurs.
Hope this helps.
Regards, Nick
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ