MsiServiceConfigFailureActions 表
MsiServiceConfigFailureActions 表列出在服务失败后要运行的操作。 此表中指定的操作在下次启动系统时运行。
Windows Installer 4.5 或更低版本:不支持。 此表从 Windows Installer 5.0 开始提供。
MsiServiceConfigFailureActions 表包含以下列。
列 | 类型 | 密钥 | Nullable |
---|---|---|---|
MsiServiceConfigFailureActions | Identifier | Y | N |
名称 | Formatted | N | N |
事件 | 整数 | N | N |
ResetPeriod | 整数 | N | Y |
RebootMessage | Formatted | N | Y |
Command | Formatted | N | Y |
操作 | 文本 | N | Y |
DelayActions | 文本 | N | Y |
Component_ | Identifier | N | N |
列
-
MsiServiceConfigFailureActions
-
这是此表的主键,用于标识失败操作。
-
Name
-
此列包含属于此包的服务或已安装服务的名称。
-
Event
-
此列指定何时更改服务的配置。 以下值是可以组合的以表示多个操作的位字段。 将忽略任何其他位字段值。
返回的常量 说明 msidbServiceConfigEventInstall1 在安装组件期间更改。 msidbServiceConfigEventUninstall2 在卸载组件期间更改。 msidbServiceConfigEventReinstall4 在重新安装组件期间更改。 -
ResetPeriod
-
服务失败计数的重置周期(以秒为单位)。 服务控制管理器 (SCM) 会统计自上次重启系统以来每个服务失败的次数。 如果服务在重置周期内未失败,则计数将重置为零。 当服务第 N 次失败时,系统会执行 Actions 字段中指定的数组的元素 [N-1] 中指定的操作。
将 ResetPeriod 字段留空表示永远不重置失败计数。
-
RebootMessage
-
在重启计算机以响应 Actions 列中指定的 SC_ACTION_REBOOT 操作之前发送给用户的消息。 可以使用空字符串 "" 按原样发送当前消息。 可以使用 Formatted 数据类型的 [~] 语法删除当前消息且不发送任何消息。
-
Command
-
CreateProcess 函数创建的进程运行的命令行,用于响应 Actions 列中指定的 SC_ACTION_RUN_COMMAND 操作。 新进程在与服务相同的帐户下运行,并且仅当 Action 字段为 SC_ACTION_RUN_COMMAND 时才会运行。 可以使用空字符串 "" 来按原样使用当前命令行。 可以使用 Formatted 数据类型的 [~] 语法删除当前命令行,并在服务失败时不运行任何操作。
-
Actions
-
此字段包含一个整数值数组,这些值指定当服务失败时 SCM 要执行的操作。 用 [~] 分隔数组中的值。 数组的第 N 个元素中的整数值指定当服务第 N 次失败时要执行的操作。 数组的每个成员是以下整数值之一。
返回的常量 说明 SC_ACTION_NONE0 无操作。 SC_ACTION_REBOOT2 重新启动计算机。 SC_ACTION_RESTART1 重启服务。 SC_ACTION_RUN_COMMAND3 运行命令。 -
DelayActions
-
此字段包含一个整数值数组,这些值指定在执行 Action 列中指定的操作之前要等待的时间(以毫秒为单位)。 用 [~] 分隔数组中的值。 DelayActions 数组中的元素数必须等于 Actions 数组中的元素数。 DelayActions 数组的第 N 个元素指定 Actions 数组的第 n 个元素的时间延迟。
-
Component_
-
Component 表第一列的外键。
验证