Share via


ICEM12

ICEM12 會驗證 ModuleSequence 資料表中的標準動作具有序號,而自訂動作具有 BaseAction 和 After 值。

此 ICEM 可在 Windows Installer 2.0 SDK 和更新版本中提供的 Mergemod.cub 檔案中使用。 如需詳細資訊,請參閱 適用于 Windows Installer 開發人員的 Windows SDK 元件

結果

ICEM12 會在下列情況下張貼錯誤:

如果 ICEM12 發現已指定序號的自訂動作,但 BaseAction 或 After 欄位中沒有值,則會張貼警告。

請注意, CustomAction 資料表 中找到的所有動作都會被視為自訂動作。 所有其他動作都會被視為標準動作。

範例

ICEM12 會針對包含下列資料庫專案的模組張貼下列錯誤和警告訊息,如下所示:

Error. Custom actions should use the BaseAction and After fields and not use the 
Sequence field in the Module Sequence tables. The custom action 'Action1' uses the Sequence field 
and does not use the BaseAction and After fields in the ModuleInstallExecuteSequence table. 
    
Error. Custom actions should not leave the Sequence, BaseAction, and After fields 
of the Module Sequence tables all empty. The custom action 'Action3' leaves the Sequence, 
BaseAction, and After fields empty in the ModuleAdminExecuteSequence table.

Error. Standard actions should not use the BaseAction and After fields in Module 
Sequence tables. The standard action 'Action2' has a values entered in the BaseAction 
or After fields of the ModuleAdminExecuteSequence table.

Error. Standard actions must have a entry in the Sequence field of Module Sequence 
tables. The standard action 'Action2' does not have a Sequence value in the 
ModuleExecuteSequence table.

CustomAction

動作 類型 來源 目標
Action1 30 source1 target1
Action3 30 source3 target3

 

ModuleAdminExecuteSequence

動作 順序 BaseAction After 條件
Action2   Action1 1 true
Action3       true

 

ModuleInstallExecuteSequence

動作 順序 BaseAction After 條件
Action1 1     true

 

若要修正這些錯誤,請嘗試下列各項:

  • 移除自訂動作 Action1 的序號,並改用 BaseAction 和 After 欄位。
  • 在自訂動作 Action3 的 Sequence、BaseAction 或 After 欄位中輸入值。 針對標準動作 Action2,將 BaseAction 和 After 欄位保留空白。
  • 請勿將 [順序] 欄位保留為標準動作 Action2 的空白。

合併模組 ICE 參考