使用英语阅读

通过


ICE77

ICE77 可验证设置了 MSIDBCustomActionTypeInScript 位的自定义操作的顺序是否在 InstallInitialize 操作后且在 InstallFinalize 操作前。 ICE77 可检查 InstallExecuteSequence 表AdminExecuteSequence 表中的序列。

结果

如果在 InstallInitialize 操作前或 InstallFinalize 操作后对脚本内自定义操作进行排序,ICE77 会发布错误。

如果缺少 InstallInitialize 操作或 InstallFinalize 操作,ICE77 会发布错误。

示例

对于示例,ICE77 报告以下错误:

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 表(部分)

操作 类型
CA_InScriptInstall 1025
CA_InScriptAdmin 1026

 

InstallExecuteSequence 表(部分)

操作 序列
CA_InScriptInstall 2000
InstallInitialize 1500

 

AdminExecuteSequence 表(部分)

操作 序列
CA_InScriptAdmin 1400
InstallInitialize 1500
InstallFinalize 6600

 

若要修复错误,请将脚本内自定义操作放在 InstallInitialize 操作后且在 InstallFinalize 操作前。 InstallExecuteSequence 表和 AdminExecuteSequence 表中必须存在 InstallInitialize 和 InstallFinalize 操作。

ICE 参考