Dela via


ICE27

ICE27 verifierar sekvenstabeller för ett installationspaket för giltiga åtgärder, åtgärdssekvensbegränsningar och organisation i avsnitten Sök, Kostnadsberäkning, Val och Körning.

Den anpassade ICE27-åtgärden verifierar följande:

  • Att åtgärderna i kolumnen Åtgärd i sekvenstabellerna är en standardåtgärder, en anpassad åtgärd som anges i tabellen CustomActioneller en dialogruta som visas i tabellen Dialog.
  • Att åtgärder som omfattas av sekvenseringsbegränsningar är i rätt relativ ordning till varandra i åtgärdssekvensen. Sekvenseringsbegränsningar resulterar när en åtgärd är beroende av en annan.
  • Åtgärderna som är begränsade till ett visst avsnitt i sekvensen finns där de hör hemma. ICE27 verifierar följande organisation av sekvenstabellerna. Observera att inte alla sekvenstabeller har varje avsnitt. Se de föreslagna sekvenstabellerna i Använda en sekvenstabell.
Sekvenstabellavsnitt Intervall i åtgärdssekvens Åtgärder som hör till avsnittet
Söka {start} för att CostInitialize Åtgärder som söker efter befintliga program. AppSearch
CCPSearch
Kostar CostInitialize to CostFinalize action Åtgärder som fil som kostar. CostInitialize
FileCost
CostFinalize
Urval CostFinalize to InstallValidate Åtgärder som anger mappar eller funktionstillstånd. SetODBCFolders-åtgärd
Avrättning InstallValidate till InstallFinalize Skriptåtgärder, till exempel registrering, publikation, installation (där du kopierar filer). Observera att åtgärden InstallFinalize måste finnas i tabellen om och endast om det finns åtgärder i avsnittet Körning.
PostExecution InstallFinalize till {end} RemoveExistingProducts

 

ICE27 validerar följande tabeller:

Resultat

ICE27 skickar ett felmeddelande om det finns sekvenstabeller i paketet med ogiltig åtgärdssekvensering eller organisation.

Exempel

ICE27-fel Beskrivning
Okänd åtgärd: Åtgärd 1 i tabellen InstallExecuteSequnence. Inte en standardåtgärd och hittades inte i CustomAction- eller dialogtabeller Det finns en åtgärd som anges i sekvenstabellen som inte är en standardåtgärder, en anpassad åtgärd som anges i tabellen CustomActioneller en dialogruta som visas i tabellen Dialog.
Åtgärd 2 i tabellen InstallExecute på fel plats. Aktuell: Sök, rätt: Kostnadsberäkning Det finns en åtgärd i en sekvenstabell som är felaktigt placerad med avseende på sekvensnumret i kolumnen Sekvens. "Aktuell" anger den aktuella placeringen av åtgärden i avsnitten Sök, Kostnadsberäkning, Markering eller Körning i den angivna sekvenstabellen.
"Rätt" anger i vilket avsnitt åtgärden hör till.
Åtgärda det här felet genom att ändra sekvensnumret för åtgärden till i rätt avsnitt. Observera att vissa åtgärder kan finnas i mer än ett avsnitt.
Åtgärden InstallFinalize i tabellen InstallExecuteSequence kan bara anropas när det finns skriptåtgärder som ska köras Det finns en InstallFinalize-åtgärd i en sekvenstabell som inte innehåller några skriptåtgärder i avsnittet Körning i tabellen. Lägg till åtgärder i avsnittet Körning eller ta bort åtgärden InstallFinalize från tabellen.
InstallFinalize måste anropas i tabellen InstallExecuteSequence eftersom skriptåtgärder finns för att köras Det finns en sekvenstabell som innehåller åtgärder i avsnittet Körning som inte innehåller åtgärden InstallFinalize. Lägg till åtgärden InstallFinalize i den här sekvenstabellen och ge den det största sekvensnumret för att placera den sist i åtgärdssekvensen.
Åtgärd: "Action3" i tabellen InstallExecuteSequence måste komma före åtgärden "Action5". Aktuell seq#: 1200. Beroende seq#: 1100 Det finns en åtgärd i den angivna sekvenstabellen som sekvenseras efter en beroende åtgärd. Ändra sekvensnumret för den beroende åtgärden så att den kommer före åtgärden.
Åtgärd: Åtgärd 4 i tabellen InstallExecuteSequence måste komma efter åtgärden Action6. Det finns en åtgärd i den angivna sekvenstabellen som sekvenseras före en åtgärd som den är beroende av. Ändra sekvensnumret för åtgärden så att den kommer efter den beroende åtgärden.

 

ICE-referens