View Full Version : problem with component in major upgrade

10-27-2009, 11:10 AM
I'm performing a major upgrade to my application and in the log I see that one component is not installed although there is no condition on the component.
When using the same setup for clean installation there is no problem.
This is the line I get in the log:
MSI (s) (A4:D0) [17:01:28:302]: Component: <comp_name>; Installed: Absent; Request: Local; Action: Null

During the major upgrade I can see that the dll the component should install is removed as it should.

11-18-2009, 04:39 AM
During upgrade, what is the feature state? In the upgrade sequence, try to force the state to be "local" by calling: MsiSetFeatureState(hMSI,"FEATURE_NAME",INSTALLSTATE_LOCAL);

11-19-2009, 01:33 PM
search your log for "ActionStart(Name=InstallFiles"
under that, you'll see a whole bunch of log chunks that look like

MSI (s) (C0:00) [16:58:32:296]: Executing op: FileCopy(SourceName=<filename.ext>,SourceCabKey=<filename.ext>,DestName=<filename.ext>,Attributes=16384,FileSize=6808,PerTick=32768,,VerifyMedia=1,,,,,CheckCRC=0,,,InstallMode=58982400,HashOptions=0,HashPart1=50163850,HashPart2=1563162041,HashPart3=181922321,HashPart4=701931371,,)
MSI (s) (C0:00) [16:58:32:296]: File: C:\WINDOWS\system32\drivers\<filename.ext>; To be installed; Won't patch; No existing file

it's on that second line that it describes what action was/wasn't taken on <filename.ext> and why.

now that i look at it, maybe the faster search would be "FileCopy(SourceName=<filename.ext>" where filename.ext is the name of the file in question.