Hello,

I'm trying to configure registry settings that only apply after the advertised shortcut has been started.

I'm using the following condition for the component:
MaintenanceMode="Modify"

Component is configured with both HKCU dummy entry as a keypath and the actualy HKLM entry I need to set.

Installation log file:
Component: TESTCOMPONENT; Installed: Absent; Request: Local; Action: Null; Client State: Unknown
InstallShield 10:36:34: Attempting to determine component state for TESTCOMPONENT
InstallShield 10:36:34: Install state of component is 2, action is ffffffff

When I start the advertised shortcut - repair is not run. I presume it's because the component state is not re-evaluated somehow. And of course - because it's being started by the same local admin account that ran the initial .msi installation.

Can someone point me in the right direction please? ;)
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
Component is configured with both HKCU dummy entry as a keypath and the actualy HKLM entry I need to set.
Remember that components are only repaired if the data is missing. If the package wrote the HKLM entry when it was instaled, there's no need for it to be repaired.
Answered 11/23/2011 by: VBScab
Red Belt

Please log in to comment
0
Components keypath is set to a HKCU entry. That entry is not applied during initial setup because the condition of the component states it should only run on repair. Presuming the components' condition logic is configured correctly.

I've checked and the HKLM entry from that component is not applied too.
Answered 11/23/2011 by: GrGrGr
Orange Belt

Please log in to comment
0
just the HKLM entry should be enough to trigger the repair if set as keypath, and assuming the component is conditioned with something like INSTALLED or your MaintenanceMode =...

Just be sure to set the component's transitive bit (reevaluate condition)

PJ
Answered 11/23/2011 by: pjgeutjens
Red Belt

Please log in to comment
0
ORIGINAL: pjgeutjens

just the HKLM entry should be enough to trigger the repair if set as keypath, and assuming the component is conditioned with something like INSTALLED or your MaintenanceMode =...

Just be sure to set the component's transitive bit (reevaluate condition)

PJ


Thank you, the transitive bit did the trick and it indeed worked and re-evaluated conditions on full repair (/famus). The question now is - can you re-evaluate conditions without forcing a full repair? Or running repair only on one feature instead?

The condition re-evaluation does not run when starting an advertised shortcut, btw, which is also disappointing.
Answered 11/24/2011 by: GrGrGr
Orange Belt

Please log in to comment
0
you can set a CA to force evaluating a condition should it be an issue.

session.doaction
session.evaluatecondition

should help you out there.
Answered 11/28/2011 by: jmcfadyen
Fifth Degree Black Belt

Please log in to comment
Answer this question or Comment on this question for clarity