cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mutchie
Level 6

Major upgrade failing on vista

I am having a problem when I do a major upgrade on vista it gets so far then rolls back and says the installer has been interupted.

The same major upgrade works with no problems on XP.

Here is what is in my upgrade table:

row 1
upgrade code: {00000000-0000-0000-0000-000000000000}
Version min: blank
Version max: 1.6.0080
Language: blank
Attributes: 513
Remove: blank
Action Property: ISACTIONPROP1

row 2
upgrade code: {00000000-0000-0000-0000-000000000000}
Version min: 1.6.0080
Version max: blank
Language: blank
Attributes: 2
Remove: blank
Action Property: FOUNDNEWERVERSION

I have also attached the log of what I get.

Does anyone have any ideas why it is failing?

Thanks in advance
Labels (1)
0 Kudos
(4) Replies
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

The log appears to indicate a failure with the OnMoving event/custom action:
Action 16:29:07: OnMoving.
Action ended 16:29:07: InstallFinalize. Return value 3.

Unfortunately, no other detail is provided.

Do you have any script code in the OnMoving event? Does the old product uninstall successfully from Add/Remove Programs?
0 Kudos
mutchie
Level 6

I have no installscript at all.

Uninstalling from the Add/remove programs works fine.:confused:
0 Kudos
mutchie
Level 6

I have managed to get the upgrade to work on Vista, but this cannot be a permenant solution.

If I run the setup.exe as administrator it will do the upgrade. The thing is I am already logged onto the PC as administrator and I have not had to do this with any pervious versions in Vista.

I have even created a small test project with the same priviledges set and I can run an upgrade for this with no problems just by double clicking not running as administrator.

Other than starting over again (I am convinced something has happened in the conversion from 11.5 to 2008)?:confused:
0 Kudos
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

The existing product does contain InstallScript either because it is an InstallScript MSI project or because it contains at least one InstallScript custom action (other actions such as ISMsiServerStartup and OnMoving would otherwise not be present).

The failure is occurring because the uninstall of the old package does not have sufficient privileges to successfully run the old InstallScript engine. This is one of the reasons the InstallScript engine architecture was changed starting with InstallShield 12, so that situations like this could be avoided and the engine would be more reliable.

The cause of this behavior is the older InstallScript engine in the existing product, not the project that has been built in IS 2008. To be able to work around this issue, one of the following options could be used:
- Manually remove the existing product through Add/Remove Programs.
- Use the ShellExecute API (which can be done through an InstallScript custom action in IS 2008 with the LaunchApplication function) to launch the existing product uninstall elevated (on Vista/Server 2008 only) so that the InstallScript engine in the old product runs with sufficient privileges to complete successfully.
- Mark the setup.exe in the project built with IS 2008 to require administrator privileges.

Note that any of the above workarounds are only required for this particular upgrade. Once the old product built with IS 11.5 is gone, any new upgrades can be performed normally.
0 Kudos