MsiServiceConfigFailureActions 表

MsiServiceConfigFailureActions 表列出了在服务失败后要运行的作。 下次启动系统时,此表中指定的作将运行。

Windows Installer 4.5 或更高版本:不支持。 此表从 Windows Installer 5.0 开始可用。

MsiServiceConfigFailureActions 表具有以下列。

类型 钥匙
MsiServiceConfigFailureActions 标识符 Y N
名字 格式化 N N
事件 整数 N N
ResetPeriod 整数 N Y
RebootMessage 格式化 N Y
命令 格式化 N Y
行动 文本 N Y
DelayActions 文本 N Y
元件_ 标识符 N N

 

MsiServiceConfigFailureActions

这是此表的主键,用于标识失败作。

名称

此列包含属于此包或已安装的服务的名称。

事件

此列指定何时更改服务的配置。 以下值是可以组合以表示多个作的位字段。 将忽略任何其他位字段值。

不断 描述
msidbServiceConfigEventInstall1
在安装组件期间发生更改。
msidbServiceConfigEventUninstall2
在卸载组件期间发生更改。
msidbServiceConfigEventReinstall4
在重新安装组件期间发生更改。

 

ResetPeriod

服务故障计数的重置周期(以秒为单位)。 服务控制管理器(SCM)计算自上次重启系统以来每个服务失败的次数。 如果服务在重置期间未失败,计数将重置为零。 当服务第 N 次失败时,系统会执行在 Actions 字段中指定的数组的元素 [N-1] 中指定的作。

将 ResetPeriod 字段留空,以指示不应重置失败计数。

RebootMessage

在重启计算机之前发送给用户的消息,以响应在“作”列中指定的 SC_ACTION_REBOOT作。 可以使用空字符串“”来发送当前消息不变。 可以使用 格式化 数据类型的 [~] 语法删除当前消息,不发送任何消息。

命令

命令行由 CreateProcess 函数创建的进程运行,以响应“作”列中指定的 SC_ACTION_RUN_COMMAND作。 新进程在与服务相同的帐户下运行,并且仅当作字段 SC_ACTION_RUN_COMMAND时。 可以使用空字符串“”来使用未更改的当前命令行。 可以使用 格式化 数据类型的 [~] 语法删除当前命令行,并在服务失败时不运行任何作。

此字段包含整数值的数组,该值指定服务失败时 SCM 执行的作。 用 [~] 分隔数组中的值。 数组的 Nth 元素中的整数值指定服务在第 N 次失败时执行的作。 数组的每个成员都是以下整数值之一。

不断 描述
SC_ACTION_NONE0
无作。
SC_ACTION_REBOOT2
重新启动计算机。
SC_ACTION_RESTART1
重启服务。
SC_ACTION_RUN_COMMAND3
运行命令。

 

DelayActions

此字段包含整数值的数组,该值指定在执行作列中指定的作之前等待的时间(以毫秒为单位)。 用 [~] 分隔数组中的值。 DelayActions 数组中的元素数必须等于 Actions 数组中的元素数。 DelayActions 数组的第 N 个元素指定 Actions 数组的第 n 个元素的时间延迟。

Component_

组件表第一列的外部键。

验证

ICE102
ICE03
ICE06
ICE32
ICE45
ICE46
ICE69