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

Still The problem with the Feature Advertised


16 replies to this topic

pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 11 July 2011 - 11:58

Hello,

i made a visit in the site by viewing a few topic about the Feature Advertise.

this topic guides me here.

i've a problem kind of similar.

in my log i've seen that

MSI (s) (64:2C) [11:55:24:475]: Feature: MEGA; Installed: Advertise; Request: Reinstall; Action: Reinstall
...........
MSI (s) (64:2C) [11:55:24:475]: Component: Launcher_exe; Installed: Local; Request: Null; Action: Null

the Component Launcher_exe is incuded in the feature MEGA.

and with the original MSI, this component is well installed, but when i made the patch, the feature is shown as "advertise".


i did indeed removed some components, but on another major version i did the same thing and it worked. (i know we can't live with the exceptions but i just don't know why)

in the verbose log, i didn't see that SELMGR message.
and in the original MSI, i set "advertised = disallow advertsed"
i'm wondering why this setting is broken, is that because i broke the component rules?


Could you please give me a help? any idea could be helping not only to dis-block me from the problem, but also to get the knowledge.

Thank you all


PS the log file is in the zip



Attached Files



pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 11 July 2011 - 11:59

Sorry,

when i said "in another major version" i meant the upgrade process on another major version.

but what i want to do is still a patch.

MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 11 July 2011 - 12:19

I found your post difficult to understand. Might be my mistake.

My understanding:
As you say you need a patch, you cannot in any way remove a component.

pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 11 July 2011 - 12:36

Sorry about the bad description.

yes i need a patch.

i'll try to avoid that delete of component.


the question for knowledge is:

the "advertise" of the feature is caused by my deleting the componet?
even if the delete is occurred in another feature?
and even if i set "disallow advertise" in InstallShield?


pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 11 July 2011 - 17:59

i've reput the components that were deleted, and relaunch the Build of the Patch.
it still doesn' work.

and i used the "update wizard", it told me that the createFolder table contains the new content (true, because i reput the component)
so my patch will not be installable.



MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 12 July 2011 - 06:33

QUOTE
i've reput the components that were deleted, and relaunch the Build of the Patch.
it still doesn' work.


Did you use the same Component GUID when doing so.

MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 12 July 2011 - 07:00

QUOTE
the "advertise" of the feature is caused by my deleting the componet?

most probably.

pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 12 July 2011 - 08:03

QUOTE (MSIYER @ 2011-07-12 06:33)
QUOTE
i've reput the components that were deleted, and relaunch the Build of the Patch.
it still doesn' work.


Did you use the same Component GUID when doing so.

yes i did.

should i reput the file into the component, too?

and the "createfolder table" is it critical?

MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 12 July 2011 - 08:25

QUOTE
should i reput the file into the component, too?

and the "createfolder table" is it critical?

What was the original structure of the Component?
What was its GUID?
What were the files present?
What was its KeyFile or KeyPath?
Do not answer this in forum but ask yourself and find in the old version and restore everything.
Although the keyfile is the only file needed but restore everything for now.

MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 12 July 2011 - 08:31

Not exactly related to this thread but some general tips:
Read properly all the Best Practices.
Go deep into the Windows Installer Engine details and how it works etc...
Try to learn why we need:
Product GUID
Package GUID
Upgrade GUID
Component GUID
Patch GUID
etc...
Whats a patch
What are the rules for patching, Major Upgrade etc
How Windows Installer keeps track of components and Shared Components and what HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs is etc...

Edited by MSIYER, 12 July 2011 - 08:35.


VBScab

VBScab
  • Full Members
  • 436 posts

Posted 12 July 2011 - 12:34

...in other words, download and digest Phil Wilson's The Definitive Guide To Windows Installer.
- Don't know why 'x' happened? Want to know why 'y' happened? ProcMon will tell you.
- Try using http://www.google.com before posting.
- I answer questions only via forums. Please appreciate the time I give here and don't send me personal emails.

pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 12 July 2011 - 14:37

i reput all the component missing and the files present before.
i check the Update Rule and they are all followed.

there is still this issue.


i used the MSI Diff Tool, it told me that in _validation table, two lines have been deleted.

QUOTE

InstallShield Property N Identifier 
InstallShield Value  Y Text 


but when i make the check, this information is well present on the target side.

and when i use InstallShield to open the msp in Edit mode, it figures the same modification, too.

this is the only possibility that i can imagine now, because all the rules broken are fixed.



Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 13 July 2011 - 01:44

I can't quite follow what is happening here or exactly what the desired behavior is.

A minor upgrade patch should not be able to change any feature installation states as far as I know. An improperly authored major upgrade patch might cause trouble in relation to the MigrateFeatureStates standard action: http://msdn.microsof...4(v=vs.85).aspx . It will migrate the feature state to match what is already installed, but my experience is that this works less than smooth sometimes.

If you have upgrade problems the best solution is generally to make a new major upgrade and test that it works correctly. Then you deploy the full major upgrade instead of the patch to "wipe the slate clean" and allow patching in the next update.
Regards
-Stein Åsmul

MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 13 July 2011 - 05:34

Your problem indicated a messed up patch and you confirmed that you had removed some components. If the solutions did not work, why don't you:
1) Try starting afresh for patch creation and sticking to all rules
OR
2) Create a Major Upgrade as Glytzhkof mentions

Make the full Minor Upgrade capable msi work first, then go for patching. Test the package for all scenarios.

Edited by MSIYER, 13 July 2011 - 19:42.


Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 13 July 2011 - 15:38

One basic thing that sometimes falls by the wayside is the fact that a patch is merely a compression and distribution mechanism. A patch is the compact version of a full upgrade MSI that is working. Accordingly you need to implement the new MSI and test it fully in all scenarios before even thinking about generating a patch.
Regards
-Stein Åsmul

pizzahut520

pizzahut520
  • Full Members
  • 9 posts

Posted 18 July 2011 - 13:05

QUOTE (MSIYER @ 2011-07-13 05:34)
Your problem indicated a messed up patch and you confirmed that you had removed some components. If the solutions did not work, why don't you:
1) Try starting afresh for patch creation and sticking to all rules
OR
2) Create a Major Upgrade as Glytzhkof mentions

Make the full Minor Upgrade capable msi work first, then go for patching. Test the package for all scenarios.

i sticked to all rules and it works now. i'm trying to deploy the correction into the automatic process.

thanks all of giving me advises.



MSIYER

MSIYER
  • Full Members
  • 90 posts

Posted 19 July 2011 - 08:43

So good to hear that.

Keep Learning...