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

CostFinalize is adding features


3 replies to this topic

klacounte

klacounte
  • Full Members
  • 5 posts

Posted 21 July 2007 - 00:01

I'm wondering if anyone would know why CostFinalize would add features when a patch is applied. During initial setup I'm selecting certain features to be installed using the CustomSetup dialog. When the patch gets applied, 2 out of the 6 unselected features get added at the end of CostFinalize. The patch is a small update patch. REINSTALL is ALL and REINSTALLMODE is omus. Also, I'm not using Feature conditions.

MSI log (feature names modified):

MSI © (D0:E8) [15:38:05:584]: PROPERTY CHANGE: Adding REINSTALL property. Its value is 'Feature1,Feature2,Feature3,Feature4,Feature5'.
MSI © (D0:E8) [15:38:05:584]: PROPERTY CHANGE: Adding ADDLOCAL property. Its value is 'Feature6,Feature7'.
Action ended 15:38:05: CostFinalize. Return value 1.

Edit:
I just noticed that InstallValidate lists the previously installed features as 'Advertise'. ohmy.gif Not good since they were installed 'Local' originally. When the app is uninstalled all of the "advertised" features are not uninstalled.

Edited by klacounte, 21 July 2007 - 00:29.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 July 2007 - 16:49

Look for SELMGR errors in your log. I guess you violated some component update rules.

klacounte

klacounte
  • Full Members
  • 5 posts

Posted 24 July 2007 - 05:56

Thanks Stefan. From your tip I figured out I have two separate issues. First, I had a component that was shared by most of the features and I had removed it from all but one feature. I'm guessing I violated this rule but it's not clear.

QUOTE (MSDN)
The update can enlarge or reduce the feature-component tree but it must not reorganize the existing hierarchy of features and components described by the Feature and FeatureComponents tables. It can add a new feature to the existing feature-component tree. If it removes a parent feature, it must also remove all the child features of the removed feature.


This caused the previously installed features to show as Advertized after installing the patch.

My second issue is that my Update.exe is not passing the command line arguments from setup.ini to msiexec.exe although I verified that it's being read. I'll do some more testing on this in the morning. Anyway, this is causing CostFinalize to "Add Local" the features that were not previously installed. I think this is because I've added a component to each one.

I'll post a follow up on whether I get the last issue figured out.

Thanks again!

klacounte

klacounte
  • Full Members
  • 5 posts

Posted 24 July 2007 - 16:28

I found the solution to my second problem which was the command line arguments from setup.ini not being passed to msiexec.exe. If you specify command line arguments to setup.exe or update.exe then the setup.ini args are ignored. I can understand why but I'd prefer a smarter solution.