ICE 102

驗證 MsiServiceConfigMsiServiceConfigFailureActions 資料表。

確認MsiServiceConfigMsiServiceConfigFailureActions資料表中的事件資料行中的值是msidbServiceConfigEventInstall、msidbServiceConfigEventUninstallmsidbServiceConfigEventReinstall 確認 MsiServiceConfig 和 MsiServiceConfigFailureActions 資料表中Component_資料行中的值是否為 元件資料表的有效索引鍵。

確認 MsiServiceConfig 資料表的 ConfigType 資料行中的值是其中一個允許的值。

確認 MsiServiceConfigFailureActions 資料表的 Actions 和 Delayed Actions 資料行中的值是以 [~] 分隔。 確認 [動作] 資料行中列出的值數目,以及 MsiServiceConfigFailureActions 資料表每個資料列中 [延遲動作] 資料行中列出的值數目都相同。

如果 MsiServiceConfig 資料表的 [ConfigType ] 欄位中的值 SERVICE_CONFIG_DELAYED_AUTO_START Argument 欄位中的值必須是 0 或 1。

如果 MsiServiceConfig 資料表的 ConfigType 欄位中的值 SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO Argument 欄位中的值必須包含 有效的 Privilege Constants字串。

如果 MsiServiceConfig 資料表 的 [ConfigType] 欄位中的值 SERVICE_CONFIG_SERVICE_SID_INFO 則 Argument 欄位中的值必須 SERVICE_SID_TYPE_NONESERVICE_SID_TYPE_RESTRICTEDSERVICE_SID_TYPE_UNRESTRICTED

如果 MsiServiceConfig 資料表的 ConfigType 欄位中的值 SERVICE_CONFIG_PRESHUTDOWN_INFO Argument 欄位中的值必須是正值或空白。 如果 MsiServiceConfig 資料表的 ConfigType 欄位中的值 SERVICE_CONFIG_FAILURE_ACTIONS_FLAG Argument 欄位中的值必須包含 0 或 1。

Windows Installer 4.5 或更早版本不支援。 從 Windows Installer 5.0 開始,即可使用此 ICE。

結果

ICE102 會張貼下列錯誤。

ICE102 錯誤 Description
在 MsiServiceConfig 資料表專案 (MsiServiceConfig = ) [1],ConfigType =%d 不是有效的參數。 它應該介於 3 到 7 之間。 MsiServiceConfig 資料表的 [設定] 欄位不包含其中一個允許的值。
在 MsiServiceConfig 資料表專案 (MsiServiceConfig = ) [1],Argument =%s 不是有效的 %s 參數。 它應該是 %s。 MsiServiceConfig 資料表的 Argument 欄位不包含其中一個允許的值。
在 MsiServiceConfigFailureActions 資料表專案 (MsiServiceConfigFailureActions = ) [1], Actions=[3] 不是有效的參數。 它應該是以 Null 分隔的非負整數清單。 MsiServiceConfigFailureActions的 [動作] 欄位不包含正整數陣列。 以 [~] 分隔陣列中的值。
在 MsiServiceConfigFailureActions 資料表專案 (MsiServiceConfigFailureActions = ) [1], DelayActions=[4] 不是有效的參數。 它應該是以 Null 分隔的非負整數清單。 MsiServiceConfigFailureActions 的 DelayActions欄位不包含正整數陣列。 以 [~] 分隔陣列中的值。
在 MsiServiceConfigFailureActions 資料表專案 (MsiServiceConfigFailureActions = ) [1],Actions (=%d) 的數目不等於 DelayActions (=%d) 的數目。 它們應該相等。 MsiServiceConfigFailureActions資料表的 Actions 和 DelayActions 欄位中的專案數目不相等。 這些陣列中的元素數目應該相同。

 

ICE102 會張貼下列警告。

ICE104 警告 Description
在 MsiServiceConfig 資料表專案 (MsiServiceConfig = ) [1],[引數] 欄位會保留空白。 將使用預設前置值 180000 時間延遲為 180000 毫秒,因為 MsiServiceConfig 資料表 的 Argument 欄位是空白的。
在 MsiServiceConfigFailureActions 資料表專案 (MsiServiceConfigFailureActions = ) [1],ResetPeriod 會保留空白。 它會取代為 INFINITE。 失敗計數永遠不會重設,因為 MsiServiceConfigFailureActions 的 ResetPeriod 欄位是空白的。