ICE27

ICE27 會驗證安裝套件的 序列資料表 ,以取得搜尋、成本、選取和執行區段中的有效動作、動作順序限制和組織。

ICE27 自訂動作會驗證下列各項:

時序表區段 動作順序中的範圍 屬於區段的動作
搜尋 {start} 至 CostInitialize 搜尋現有應用程式的動作。 AppSearch
CCPSearch
成本 CostInitializeCostFinalize 動作 執行 檔案成本的動作。 CostInitialize
FileCost
CostFinalize
選取項目 CostFinalizeInstallValidate 設定資料夾或功能狀態的動作。 SetODBCFolders 巨集指令
執行 InstallValidateInstallFinalize 腳本動作,例如註冊、發行集、安裝 (,您可以在其中複製檔案) 。 請注意,只有在 [執行] 區段中有動作時, InstallFinalize 巨集指令 必須位於資料表中。
PostExecution InstallFinalize 至 {end} RemoveExistingProducts

 

ICE27 會驗證下表:

結果

如果套件中有無效動作排序或組織的序列資料表,ICE27 就會張貼錯誤訊息。

範例

ICE27 錯誤 描述
未知的動作:InstallExecuteSequnence 資料表的 'Action1'。 不是標準動作,而且在 CustomAction 或 Dialog 資料表中找不到 序列資料表中所列的動作指出不是 標準動作CustomAction 資料表中列出的自訂動作,或對話方塊列在 Dialog 資料表中的對話方塊。
InstallExecute 資料表中的 'Action2' 位於錯誤的位置。 目前:搜尋、正確:成本 序列資料表中有一個動作,在序列資料行中不正確地放置序號。 「Current」 表示動作在指定序列資料表的 [搜尋]、[成本]、[選取範圍] 或 [執行] 區段中的目前位置。
「正確」表示動作所屬的區段。
若要修正此錯誤,請將動作的序號變更為正確區段內的序號。 請注意,某些動作可以位於多個區段中。
InstallExecuteSequence 資料表中的 'InstallFinalize' 動作只能在腳本作業存在時呼叫 序列資料表中有 InstallFinalize 巨集指令 ,不包含資料表 [執行] 區段中的任何腳本作業。 將動作新增至 [執行] 區段,或從資料表中移除 InstallFinalize 動作。
InstallFinalize 必須在 InstallExecuteSequence 資料表中呼叫,因為必須執行腳本作業 有一個序列資料表包含執行區段中不包含 InstallFinalize 巨集指令的動作。 將 InstallFinalize 巨集指令新增至此序列資料表,並提供最大的序號,將它放在動作順序的最後一個。
動作:InstallExecuteSequence 資料表中的 'Action3' 必須位於 'Action5' 動作之前。 目前的 seq#: 1200。 相依 seq#: 1100 指定的序列資料表中有一個動作,會在相依動作之後排序。 變更相依動作上的序號,使其出現在動作之前。
動作:InstallExecuteSequence 資料表中的 'Action4' 必須位於 'Action6' 動作之後。 指定的序列資料表中有一個動作,會在與其相依的動作之前進行排序。 變更動作上的序號,使其出現在其相依動作之後。

 

ICE 參考