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

Upgrade doesn't find path, Uninstall-Link


6 replies to this topic

ISuser

ISuser
  • Members
  • 15 posts

Posted 19 October 2004 - 13:46

Hallo,

since many years we are using InstallShield Express German. Currently we are using version 5. InstallShield advertises with upgrade and patch capabilities. Great, we thought and tested at once. But nothing is working as expected.

How does it really work?

Example:
A customer receives the program DUMMY in version 2.5.9 with lots of additional files from us.
In (1) Setup Organisation
- General Information
-- Product name: DUMMY
-- Product version: 2.5.9
-- Product code: {02419373-A4F7-4F6B-B27D-2C1780964AD6}
-- Upgrade code: {D8DD7BE6-2844-47A8-8D86-6C1BE1101174}

- Upgrade Paths
-- (no entry)

Our customer installs that in a path different to the standard path, i.e. not in [ProgramFileFolder], eg. onto another drive.
A few days/weeks/months later there is a new DUMMY version 2.5.10.
We repalace the old DUMMY.EXE and her corresponding DUMMY.DLL in the path. We open the last recently used project (eg. File->1) and change product version and product code.
The entry in "Upgrade Paths" will be read automatically from the MSI package for "DUMMY 2.5.9".

In Install Shield Express it will look like that:
In (1) Setup Organisation
- Entry in "General Information"
-- Product name: DUMMY
-- Product version: 2.5.10
-- Product code: {D872B70D-FB4F-4CD5-9CFD-19C2EC5A94EA}
-- Upgrade code: {D8DD7BE6-2844-47A8-8D86-6C1BE1101174}

- Upgrade Paths
-- DUMMY020509 (name of the Upgrade path which can be chosen freely)
--- Upgrade Code: {D8DD7BE6-2844-47A8-8D86-6C1BE1101174}
--- Min. Version: 2.5.9
--- Include min. Version: Yes
--- Max. Version: 2.5.9
--- Include max. Version: Yes
--- Language IDs: 1031
--- Search criteria for the language: Include language IDs
--- Migrate Feature States: Yes

In the new MSI package there is now the new DUMMY.EXE and DUMMY.DLL. All other files are the same.
Our customer will now ask:
1. I always have to choose the path while I am upgrading. Why InstallShield doesn't find the path on its own? The application is registered.
2. Why the Uninstall shortcut is no longer working after installing version 2.5.10?

A customer will be impatient. Currently we don't know how to find the right way of distributing a MSI package which can be used as a first (complete) installation and which updates existing installations.

Do you know any help?
If you need more information to give us help, just ask.
Welche Einstellungen fehlen uns zu unserem Glück, bzw. zu einer fehlerfreien Upgrade-Installation?
Für ausführliche Hilfen sei hier schon vorab recht herzlich gedankt!

ISuser

ISuser
  • Members
  • 15 posts

Posted 20 October 2004 - 14:39

Well I have found information on my own: Q105884

Summary

InstallShield Express 3.x and higher are based on the Windows Installer Service and use the Major Upgrade method of the MSI technology to send a full upgrade to an existing product. This article discusses the Major Upgrade method and a way to configure Upgrade Paths in InstallShield Express version 3.x and higher.
Discussion
InstallShield Express includes a feature called Upgrade Paths. Setup authors can use this feature to send upgrades to setups created with Express 3.0 or higher. If your previous setup was deployed using an earlier version of Express, such as Express 2.x, you will not be able to use this feature to send an upgrade. Upgrade Path searches the target system for the old install, based on its Upgrade Code, silently uninstalls it, and then installs the new product.

Follow these checklist steps to ensure you deploy your upgrade successfully:

1. You can use the same .ism file, or you can create a new one. If you use the same project file, make sure to change the Product GUID. You do not need to change the Upgrade GUID. The Product GUID is located in the General Information view under the Organize the Setup heading.

2. Right-click on Upgrade Paths and select New Upgrade Path. This prompts you for an MSI file. If you do not have an MSI file because you built a single Setup.exe, click Cancel. This displays the properties of the Upgrade Paths.

Upgrade Paths Properties:
* Upgrade Code: This value should be the same as your original project's Upgrade Code (which can be found in the original project's General Information view. Make sure you include the braces ({}) around the Upgrade Code. This field is not nullable.

* Min Version and Max Version: You can fill these in with the Minimum and Maximum version of the product to which you want this upgrade path to apply. These fields are nullable, and you can leave them blank.

* Language Identifier: If you only want to uninstall products that were shipped with certain languages, you can specify the Language GUID. This field is nullable.

* Ignore Remove Failure: If you want to continue the installation even if the Upgrade Path fails, set this property to Yes.

* MigrateFeatureStates: This property checks the feature states of the original installation and migrates their states over to the upgrade installation.

---------------------
---------------------

As we see, this is the same what we have done. But it doesn't work! Why?
Is this an error in InstallShield Express 5?
Does anybody has the same or similar problems?



ISuser

ISuser
  • Members
  • 15 posts

Posted 20 October 2004 - 14:45

Now we will test a "minor upgrade" because we have read, that it can be combined with a full installation.


ISuser

ISuser
  • Members
  • 15 posts

Posted 20 October 2004 - 15:01

Well, here is the link were we have found about minor upgrade:
Q105223 - Minor Upgrades

The other link about minor updates and full installation is in help files of the SDK.SDK Minor Upgrades

ISuser

ISuser
  • Members
  • 15 posts

Posted 20 October 2004 - 15:24

The minor upgrade is quiet different. But read on yourself:

Applying Small Updates by Reinstalling the Product

A small update can be applied to an application by completely or partially reinstalling the application from the command line or from a program.


To propagate the small update to current users (this is a complete reinstall) from the command line

From the command line use either: msiexec /fvomus [path to updated .msi file] or msiexec /I [path to updated msi file] REINSTALL=ALL REINSTALLMODE=vomus.
The updated .msi file is cached on the user's computer. Note that it is not possible for the user to reinstall the product using Add/Remove Programs because the updated .msi file is not yet on the user's computer.
To propagate a small update to current users (this is a complete reinstall) from a program

From a program, call MsiReinstallProduct and specify REINSTALLMODE_PACKAGE, REINSTALLMODE_FILEOLDERVERSION, REINSTALLMODE_MACHINEDATA, REINSTALLMODE_USERDATA, and REINSTALLMODE_SHORTCUT
The updated .msi file is cached on the user's computer.
The following method launches a reinstallation of only those features or components that are affected by the small update.

To propagate a small update to current users (this is a partial reinstall)

Obtain a list of the names of features and components that are affected by the small update.
From the command prompt use: msiexec /I [path to updated .msi file] REINSTALL=[Feature list] REINSTALLMODE=vomus .
The updated .msi file is cached on the user's computer.


The text can be found at Applying Small Updates by Reinstalling the Product

-----------------------
-----------------------

As expected it doesn't work!
The path of the former installation is not found.

Well, I think I will try now WISE.

ISuser

ISuser
  • Members
  • 15 posts

Posted 20 October 2004 - 16:27

Hallo,

here are some links, which I have found:

Sending a Minor Upgrade to an Existing Product Without Uninstalling/Reinstalling
and
Applying Small Updates by Reinstalling the Product
and
Command-Line Switches for the Microsoft Windows Installer Tool

and still it is not working.
Any ideas?

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 21 October 2004 - 10:35

A minor update should detect the original installation directiry. Did you generate a log file of the update install to see what's going on?