ICE12
ICE12 fragt die Tabellen CustomAction, Directory, AdminExecuteSequence, AdminUISequence, AdvtExecuteSequence, InstallExecuteSequence und InstallUISequence ab, um Folgendes zu überprüfen:
- Die CostFinalize-Aktion tritt in jeder Sequenztabelle auf, die Aktionen vom Typ Benutzerdefinierter Aktionstyp 35 oder Benutzerdefinierter Aktionstyp 51 enthält.
- Jeder Benutzerdefinierte Aktionstyp 35 kommt nach der CostFinalize-Aktion. in den Sequenztabellen.
- Jeder Benutzerdefinierte Aktionstyp 51, der über einen Fremdschlüssel für die Directory-Tabelle in der Spalte „Source“ der CustomAction-Tabelle verfügt, kommt vor der CostFinalize-Aktion in den Sequenztabellen.
Beachten Sie, dass ICE12 den formatierten Text in der Target-Spalte der CustomAction-Tabelle nicht überprüft.
ICE12 gibt eine Fehlermeldung aus, wenn bei der Überprüfung der benutzerdefinierten Aktionen, die eine Verzeichniseigenschaft festlegen, ein Fehler festgestellt wird.
ICE12 würde drei Fehler für das gezeigte Beispiel melden.
- Für CA1 wurde der Ordner „MyFolder“ nicht in der Directory-Tabelle gefunden.
- Bei CA2 steht die Sequenz „80“ in der Tabelle InstallExecuteSequence vor CostFinalize. Sie muss hinter „(CF@100)“ stehen.
- Bei CA3 steht die Sequenz „125“ in der Tabelle InstallExecuteSequence nach CostFinalize. Sie muss vor „(CF@100)“ stehen.
CustomAction-Tabelle (teilweise)
Aktion | type | `Source` |
---|---|---|
KA1 | 35 | MyFolder |
CA2 | 35 | WindowsFolder |
CA3 | 51 | WindowsFolder |
Verzeichnis | Directory_Parent | DefaultDir |
---|---|---|
TARGETDIR | SourceDir | |
WindowsFolder | TARGETDIR | WindowsFolder |
InstallExecuteSequence-Tabelle (teilweise)
Aktion | Sequenz |
---|---|
CostFinalize | 100 |
CA2 | 80 |
CA3 | 125 |
Um den Fehler für CA1 zu beheben, ändern Sie den Eintrag in der Spalte „Source“ in der CustomAction-Tabelle in einen vorhandenen Eintrag in der Directory-Tabelle, oder fügen Sie MyFolder der Directory-Tabelle hinzu.
Um den Fehler für CA2 zu beheben, ändern Sie dessen Sequenz in der InstallExecuteSequence-Tabelle so, dass sie nach der CostFinalize-Aktion steht.
Um den Fehler für CA3 zu beheben, ändern Sie dessen Sequenz in der InstallExecuteSequence-Tabelle so, dass sie vor der CostFinalize-Aktion steht.