/build/static/layout/Breadcrumb_cap_w.png

Ugrade mechanism, Error / strange behaviour

Hi,

i'm using the msi upgrade mechanism to unistall a msi's older version while installing the new one.

Uninstalling is ok, but when the new version is being installed it excludes a single file within the msi from installation.
So, when executing the application, msi setup has first to install this missing file.

In event log the file is recognized as missing.

I don't think that the problem has something to do with this file, because when installing the new msi without
having the old one installed everything is ok.

This behaviour actually occurs with K-Lite Mega Codec Pack and MuPAD Pro 4

Any ideas ?

0 Comments   [ + ] Show comments

Answers (17)

Posted by: nheim 17 years ago
10th Degree Black Belt
0
Hi jebodis,
this could happen, if the uninstall is scheduled after the install (this is the default with quiete a few MSI authoring tools) and then removes a file wich has the same name in both versions.
have you allready inspected the MSI's with ORCA?
If not, please get ORCA and install it.
Load the MSI in ORCA and go to the 'InstallExecuteSequnce' table.
Sort the table alphabetcally and look for 'RemoveExistingProducts' line. Highlight it.
Sort the table by the sequence column and find the highligted row.
Make sure, that sequence of 'RemoveExistingProducts' is right before 'InstallValidate'.
Regards, Nick
Posted by: jebodis 17 years ago
Senior Yellow Belt
0
Hi nheim,

thanks for your answer, but it doesn't work.

Before posting my problem, i already placed "RemoveExistingProduct" between "InstallValidate" and "InstallInitialize".
Than i placed it before "InstallValidate", but the file is still being ignored.

Msi Setup displayes for some seconds "RemoveExistingProduct" with a string looking like a Registry entry, but than does
"InstallValidate". After this, msi is really deleting everything of the package. Than the new package is being installed,
except this single file.
Regards, jebodis
Posted by: nheim 17 years ago
10th Degree Black Belt
0
Hi jebodis,
maybe, there is a check for the presence of this file early in the sequence.
Get a look at the 'DrLocator', 'AppSearch' and 'Signature' tables for entries.
Also look for conditions in the 'Components' table.
Regards, Nick
Posted by: jebodis 17 years ago
Senior Yellow Belt
0
the first 3 tables are empty and the components table has no conditions

;(
Posted by: AngelD 17 years ago
Red Belt
0
Where is the file located?
Check if the msidbComponentAttributesPermanent Attribute bit has been set for the component holding the file preventing the file from being removed during uninstall.
Posted by: jebodis 17 years ago
Senior Yellow Belt
0
It is located in the programm's folder.

I'll check your tip, but the file is not being prevented from uninstalling, it is prevented from reinstalling AFTER the uninstall.

-> Bit is not set
Posted by: AngelD 17 years ago
Red Belt
0
Do a verbose log during install and see if it tells you anything why it isn't installed.
Posted by: nheim 17 years ago
10th Degree Black Belt
0
Hi jebodis,
one last step: How many features does the MSI have (feature table)? Do you have entries in the condition table?

And then, guessing must have an end, if we want this bring to a glory end!
Please log the installation as AngelD suggested and search in the logfile for the occurence of the file and component which belongs to the file.
For easier log-reading, use 'WiLogUtl.exe' from the SDK.
Regards, Nick
Posted by: jebodis 17 years ago
Senior Yellow Belt
0
Hi,
sorry for my long absence.

I tried a lot of things with this file.
I placed it in a new component and a new Feature and made it the root Feature, but nothing helped.
Than i changed the install place for the component (and than setup installed it !!). To get it at the right place, i placed a "moveFile" in the component, but it didn't worked ;(

As final i logged the installation process, but didn't found any errors related to the file.

In the "states" window of WinLogUtil.exe the file has following attributes: Installed: Absent; Request: Local; Action: Null

I don't understand why Action is null (it should be local i guess), because the feature holding the file is marked as "always install this feature".

@nheim: 16 Features ; no conditions
Posted by: jebodis 17 years ago
Senior Yellow Belt
0
any further ideas ?
Posted by: sylvain_langlois 15 years ago
Orange Belt
0
Sorry to resurrect an old thread, but I'm having this exact same problem. I'm wondering if the original poster found a solution to the problem.
Posted by: nheim 15 years ago
10th Degree Black Belt
0
Hi Silvain,
please log the installation, load the log file to an ftp service like senduit and post the link here.
Regards, Nick
Posted by: sylvain_langlois 15 years ago
Orange Belt
0
The faulty file is UCD03.dll. Senduit.com is blocked where I work. I found another website, I'm not sure if it works well...

Here's the log file for a fresh install (not upgrading from a previous version already installed):

http://www.keepandshare.com/doc/view.php?id=1022103&da=y


Here's the log file for an upgrade, when version 1.0.1 is already installed:

http://www.keepandshare.com/doc/view.php?id=1022104&da=y


Thanks.
Posted by: nheim 15 years ago
10th Degree Black Belt
0
Hi Silvain,
it could be the "migrate feature states" action. Decrease the attribute on the upgrade table entries by 4 to disable it.
Are the feature list of the old and new apps the same?
Which file are we talking about exactly, here?



MSI (s) (80:D4) [09:46:05:139]: Doing action: MigrateFeatureStates
Fin de l'action 09:46:05 : SetODBCFolders. Valeur renvoyée : 1.
MSI (s) (80:D4) [09:46:05:139]: Migrating feature settings from product(s) '{C0688194-E0D8-45D5-B215-04B82E4B458C}'
MSI (s) (80:D4) [09:46:05:139]: MigrateFeatureStates: based on existing product, setting feature 'VDM' to 'Local' state.
MSI (s) (80:D4) [09:46:05:139]: MigrateFeatureStates: based on existing product, setting feature 'Complete' to 'Local' state.
Début de l'action 09:46:05 : MigrateFeatureStates.


Regards, Nick
Posted by: shweta_kar 15 years ago
Blue Belt
0
try installing the new msi over the old by below command

msiexec /i <msipath> REINSTALL=ALL REINSTALLMODE=amuos
Posted by: sylvain_langlois 15 years ago
Orange Belt
0
I decreased the attributes of the entries in the upgrade table by 4 (from 673 to 669). The same file is still missing (UCD03.DLL) when I try to upgrade from a previous version (1.0.1). The features are the same as I used the old WSI from version 1.0.1 and just changed the product code and a few files.

I'm using Wise Package Studio 7.0 SP3.
Posted by: sylvain_langlois 15 years ago
Orange Belt
0
shweta_kar: The REINSTALL=ALL does not work because the product, the new msi, was never installed on the computer.
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