ICE 102
验证 MsiServiceConfig 和 MsiServiceConfigFailureActions 表。
验证 MsiServiceConfig 和 MsiServiceConfigFailureActions 表中的事件列中的值是否 msidbServiceConfigEventInstall、msidbServiceConfigEventUninstall或 msidbServiceConfigEventReinstall。 验证 MsiServiceConfig 和 MsiServiceConfigFailureActions 表中Component_列中的值是否是 组件表的有效键。
验证 MsiServiceConfig 表中的 ConfigType 列中的值是否为允许的值之一。
验证 MsiServiceConfigFailureActions 表中的值是否由 [~] 分隔。 验证“作”列中列出的值数以及 MsiServiceConfigFailureActions 表每行的“延迟作”列中列出的值数是否相同。
如果 MsiServiceConfig 表中的 ConfigType 字段中的值SERVICE_CONFIG_DELAYED_AUTO_START 参数字段中的值必须为 0 或 1。
如果 MsiServiceConfig 表中的 ConfigType 字段中的值SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO 参数字段中的值必须包含有效字符串 Privilege Constants。
如果 MsiServiceConfig 表中的 ConfigType 字段中的值SERVICE_CONFIG_SERVICE_SID_INFO 参数字段中的值必须 SERVICE_SID_TYPE_NONE、SERVICE_SID_TYPE_RESTRICTED或 SERVICE_SID_TYPE_UNRESTRICTED。
如果 MsiServiceConfig 表中的 ConfigType 字段中的值SERVICE_CONFIG_PRESHUTDOWN_INFO 参数字段中的值必须为正或为空。 如果 MsiServiceConfig 表中的 ConfigType 字段中的值 SERVICE_CONFIG_FAILURE_ACTIONS_FLAG 参数字段中的值必须包含 0 或 1。
Windows Installer 4.5 或更高版本:不支持。 此 ICE 从 Windows Installer 5.0 开始可用。
结果
ICE102 发布以下错误。
ICE102 错误 | 描述 |
---|---|
在 MsiServiceConfig 表项(MsiServiceConfig = )[1]中,ConfigType =%d 不是有效的参数。 它应介于 3 和 7 之间。 | MsiServiceConfig 表的 Config 字段 不包含允许的值之一。 |
在 MsiServiceConfig 表项(MsiServiceConfig = )[1]中,Argument =%s 不是有效的 %s 参数。 它应该 %s。 | MsiServiceConfig 表的 Argument 字段 不包含允许的值之一。 |
在 MsiServiceConfigFailureActions 表项(MsiServiceConfigFailureActions = )[1]中,Actions=[3] 不是有效的参数。 它应该是 null 分隔的非负整数的列表。 | MsiServiceConfigFailureActions 的 Actions 字段不包含正整数数组。 用 [~] 分隔数组中的值。 |
在 MsiServiceConfigFailureActions 表条目(MsiServiceConfigFailureActions = )[1]中,DelayActions=[4] 不是有效的参数。 它应该是 null 分隔的非负整数的列表。 | MsiServiceConfigFailureActions 的 DelayActions 字段不包含正整数数组。 用 [~] 分隔数组中的值。 |
在 MsiServiceConfigFailureActions 表项(MsiServiceConfigFailureActions = )[1]中,Actions 数(=%d)不等于 DelayActions(=%d)。 它们应该相等。 | MsiServiceConfigFailureActions 表的 Actions 和 DelayAction s 字段中的元素数不相等。 这些数组中的元素数应相同。 |
ICE102 发布以下警告。
ICE104 警告 | 描述 |
---|---|
在 MsiServiceConfig 表条目(MsiServiceConfig = )[1]中,参数字段留空。 将使用默认预决值 180000 | 时间延迟为 180000 毫秒,因为 MsiServiceConfig 表的 Argument 字段 为空。 |
在 MsiServiceConfigFailureActions 表条目(MsiServiceConfigFailureActions = )[1]中,ResetPeriod 留空。 它将替换为 INFINITE。 | 失败计数永远不会重置,因为 msiServiceConfigFailureActions 的 ResetPeriod 字段为空。 |