ICEM12
ICEM12 は、ModuleSequence テーブルで、標準アクションにシーケンス番号があるか、カスタム アクションに BaseAction 値と After 値値があるかを検証します。
この ICEM は、Windows インストーラー 2.0 SDK 以降で提供されている Mergemod.cub ファイルで使用できます。 詳細については、「Windows インストーラー開発者向けの Windows SDK コンポーネント」を参照してください。
ICEM12 は、次の場合にエラーを送信します。
- モジュールに、シーケンス番号のない標準アクションが含まれていることを検出した場合。
- ModuleAdminUISequence テーブル、ModuleAdminExecuteSequence テーブル、ModuleAdvtExecuteSequence テーブル、ModuleInstallUISequence テーブル、または ModuleInstallExecuteSequence テーブルの BaseAction フィールドまたは After フィールドに入力された値が、標準アクションに含まれていることを検出した場合。
- ModuleAdminUISequence テーブル、ModuleAdminExecuteSequence テーブル、ModuleAdvtExecuteSequence テーブル、ModuleInstallUISequence テーブル、または ModuleInstallExecuteSequence テーブルの Sequence、BaseAction、または After フィールドに入力された値のないカスタム アクションが、モジュールに含まれていることを検出した場合。
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.
アクション | Type | source | 移行先 |
---|---|---|---|
Action1 | 30 | source1 | target1 |
Action3 | 30 | source3 | target3 |
アクション | シーケンス | BaseAction | クリック後 | 条件 |
---|---|---|---|---|
Action2 | Action1 | 1 | true | |
Action3 | true |
アクション | シーケンス | BaseAction | クリック後 | 条件 |
---|---|---|---|---|
Action1 | 1 | true |
これらのエラーを修正するには、次の操作を試してください。
- カスタム アクション Action1 のシーケンス番号を削除し、代わりに BaseAction フィールドと After フィールドを使用します。
- カスタム アクション Action3 の Sequence、BaseAction、または After フィールドに値を入力します。 標準アクション Action2 の BaseAction フィールドと After フィールドは空のままにします。
- 標準アクション Action2 の Sequence フィールドは空のままにしないでください。