ICE77
ICE77 verifies that custom actions with the msidbCustomActionTypeInScript bit set are sequenced after the InstallInitialize action and before the InstallFinalize action. ICE77 checks the sequence in the InstallExecuteSequence table and AdminExecuteSequence table.
ICE77 posts an error if an in-script custom action is sequenced before the InstallInitialize action or after the InstallFinalize action.
ICE77 posts an error if the InstallInitialize action or the InstallFinalize action is missing.
ICE77 reports the following errors for the example:
InstallFinalize is missing from 'InstallExecuteSequence'.
CA_InScriptInstall is a in-script custom action. It must be sequenced
before the InstallFinalize action.
CA_InScriptAdmin is a in-script custom action. It must be sequenced
in between the InstallInitialize action and the InstallFinalize action
in the AdminExecuteSequence Sequence table.
CustomAction Table (partial)
Action | Type |
---|---|
CA_InScriptInstall | 1025 |
CA_InScriptAdmin | 1026 |
InstallExecuteSequence Table (partial)
Action | Sequence |
---|---|
CA_InScriptInstall | 2000 |
InstallInitialize | 1500 |
AdminExecuteSequence Table (partial)
Action | Sequence |
---|---|
CA_InScriptAdmin | 1400 |
InstallInitialize | 1500 |
InstallFinalize | 6600 |
To fix the errors, sequence the in-script custom actions after the InstallInitialize action and before the InstallFinalize action. The InstallInitialize and InstallFinalize actions must be present in the InstallExecuteSequence table and the AdminExecuteSequence table.