Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Major Upgrade Problem


20 replies to this topic

pylon

pylon
  • Members
  • 26 posts

Posted 06 November 2003 - 15:02

I have created a standalone Major-Upgrade-Item. It should perform an update on all preceeding versions. The old installation should be removed before the update.

UpgradeCode {#OLDSETUPCODE#}
VersionMin 0.0.0
VersionMax 1.1.02
Language
Attributes 5
Remove
ActionProperty OLDAPPFOUND
ISDisplayName MajorUpgrade

The update runs through, but does not copy any files from "ProgrammFiles". The setup informations will be saved, and will also be used at the deinstallation process.
The deinstallation process removes those files, that are known both at first installation and the update. Files that were not known to the update remain untouched.
As the update does not copy any files, I used the XCopyFile command to copy them manually. In this case however, the second setup will not be recognised: deinstallation uses the setup of the first installation.

-Why does my update not copy files automatically? Have I forgotten to configure something?
-Why won't the deinstallation process use the updated setup, when I copy the files manually?


Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 07 November 2003 - 03:21

After installation do you see two separate entries in add/remove programs?
Regards
-Stein Åsmul

pylon

pylon
  • Members
  • 26 posts

Posted 07 November 2003 - 09:45

It's only one entry in software.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 07 November 2003 - 12:17

Which project type are you using? (Basic MSI or InstallScript MSI)
generate a log while installing the upgrade to see if it reveals anything useful.

pylon

pylon
  • Members
  • 26 posts

Posted 07 November 2003 - 14:02

I have a logfile.

Attached Files



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 07 November 2003 - 18:33

This log file only lists property values. Generate a verbose log file using /L*v

pylon

pylon
  • Members
  • 26 posts

Posted 10 November 2003 - 09:45

Here is a new logfile.

Attached Files



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 November 2003 - 10:12

Sorry, can't read RAR. Can you ZIP it?

pylon

pylon
  • Members
  • 26 posts

Posted 10 November 2003 - 10:37

Here is a zipfile.

Attached Files



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 November 2003 - 11:26

This message indicates that you broke the upgrade rules by removing a component from a feature (or by changing the component GUID):
QUOTE
MSI (s) (34:70): SELMGR: ComponentId '{AB5FDF93-F75B-4D23-B4E9-339C4B5F89BF}' is registered to feature 'MainApp', but is not present in the Component table.  Removal of components from a feature is not supported!
MSI (s) (34:70): SELMGR: The feature-component mapping registration is broken for feature 'MainApp' of product '{6C237EE9-7C9B-4DD4-9714-88D93849000D}'

As a result Windows Installer gets confused about the installed state of your features:
QUOTE
MSI (s) (34:70): Feature: MainApp; Installed: Advertise;  Request: Reinstall;  Action: Reinstall

Which explains the behaviour you see.

Make sure you follow the upgrade rules, and validate your upgrade item in InstallShield. Or build a Major Upgrade instead.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 November 2003 - 11:27

P.S. it looks like you are NOT creating a Major Upgrade, despite your original post. For a Major Upgrade you ned to change the ProductCode.

pylon

pylon
  • Members
  • 26 posts

Posted 10 November 2003 - 12:09

If I change the ProductCode, the setup installs a new firstinstallation.
I can change the installpath, the files will be copied and the old installation will not be deleted.
In Software exists only 1 item to uninstall.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 November 2003 - 12:35

So it loks like the upgrade table doesn't take effect. What's the version number of your old version? Do you have a log of the (major) upgrade?

pylon

pylon
  • Members
  • 26 posts

Posted 10 November 2003 - 13:32

I have installed the first version and than the second version.
I habe two logfiles from the installations.

Log from first:

Attached Files



pylon

pylon
  • Members
  • 26 posts

Posted 10 November 2003 - 13:33

Log from second:

Attached Files



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 10 November 2003 - 14:29

I don't see anything obvious. However you seem to be using the InstalLScript MSI project type (I think you didn't answer that question). Major Upgrades are know to be problematic with InstallScript MSI projects. In generall I would recommend using Basic MSI instead. Since this is probably too late for you, you could try and run the uninstall of the old version with msiexec /x and then installing the new version.

Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 10 November 2003 - 23:21

  • Is the OLDAPPFOUND property defined in the property Manager section of your setup? If so, does it have a value assigned?
  • Is the "RemoveExistingProducts" and "FindRelatedProducts" actions inserted into the execute sequence of your setup?
  • Try to set the attribute field equal to 768

Regards
-Stein Åsmul

pylon

pylon
  • Members
  • 26 posts

Posted 11 November 2003 - 09:54

Which properties can I use in ActionProperty of Upgrade-table?
OLDAPPFOUND I have founded in the forum, but I don't know how it works.
Where can I change the actions in my setup?



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 11 November 2003 - 10:15

you can use any property (i.e. you should make up a name). Just make sure it's in all upper case, and it shouldn't be used anywhere else, in particular it should not be defined in Property table.

pylon

pylon
  • Members
  • 26 posts

Posted 11 November 2003 - 10:28

For what does the setup use this property?
Do I have to do anything with this property besides defining it in the Property-Manager?

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 11 November 2003 - 10:45

It will be read during the RemoveExistingProducts action.
You should create a property in Proptery table named SecureCustomProperties and as value specify the property name. E.g. if your property in Upgrade table is MYOLDVERSION add to Property tabel like this:

SecureCustomProperties MYOLDVERSION

If SecureCustomProperties already exists then append your property, delimited with a semicolon, like this:

SecureCustomProperties SOMEOTHERPROPERTY;MYOLDVERSION