ActiveScriptEventConsumer 类

ActiveScriptEventConsumer 类在收到事件时,以任意脚本语言运行预定义的脚本。 此类是 WMI 提供的标准事件使用者之一。 有关详细信息,请参阅借助标准使用者监视和响应事件

Mofcomp -n:root\<namespace> scrcons.mof

可以通过在 ScriptingStandardConsumerSetting 的单个实例中设置 Timeout 或 MaximumScripts 属性的值来配置系统上所有 ActiveScriptEventConsumer 实例的性能。

语法

[AMENDMENT]
class ActiveScriptEventConsumer : __EventConsumer
{
  uint8  CreatorSID[] = {1,1,0,0,0,0,0,5,18,0,0,0};
  uint32 KillTimeout = 0;
  string MachineName;
  uint32 MaximumQueueSize;
  string Name;
  string ScriptingEngine;
  string ScriptFileName;
  string ScriptText;
};

成员

ActiveScriptEventConsumer 类具有以下类型的成员:

属性

ActiveScriptEventConsumer 类具有以下属性。

CreatorSID

数据类型:uint8 数组

访问类型:只读

表示安全标识符 (SID) 的数组,它唯一地标识活动脚本事件使用者的创建者。 此属性继承自 __EventConsumer

KillTimeout

数据类型:uint32

访问类型:只读

允许运行脚本的时间长度(以秒为单位)。 如果为 0(默认值),则脚本不会终止。

MachineName

数据类型:字符串

访问类型:只读

WMI 向其发送事件的计算机的名称。 根据 Microsoft 标准使用者的约定,无法远程运行脚本使用者。 第三方使用者也可以使用此属性。 此属性继承自 __EventConsumer

MaximumQueueSize

数据类型:uint32

访问类型:只读

活动脚本事件使用者的最大队列(以字节为单位)。 此属性继承自 __EventConsumer

名称

数据类型:字符串

访问类型:读/写

限定符:Key

此事件源的唯一标识符。 如果重命名使用者,则结果是两个名称不同的相同使用者。

ScriptFileName

数据类型:字符串

访问类型:只读

从中读取脚本文本的文件的名称,旨在作为在 ScriptText 属性中指定脚本文本的替代方法。 如果 ScriptText 属性不为 NULL,则此属性必须为 NULL。

注意

指定 ScriptFileName 时,请务必保护要启动的可执行文件。 如果可执行文件不在安全的位置,或者使用强访问控制列表 (ACL) 进行保护,任何人都可以将可执行文件替换为其他可执行文件。 有关 ACL 的详细信息,请参阅在 C++ 中为新对象创建安全描述符 (SD)

ScriptingEngine

数据类型:字符串

访问类型:只读

要使用的脚本引擎的名称,例如“VBScript”。 此属性不能为 NULL。

ScriptText

数据类型:字符串

访问类型:只读

以脚本引擎已知的语言表示的脚本文本。 如果 ScriptFileName 属性不为 NULL,则此属性必须为 NULL。

备注

此类派生自 __EventConsumer 抽象类。 此类位于 root\subscription 命名空间中。

在事件使用者实例中指定脚本文本时,该脚本有权访问脚本环境变量 TargetEvent 中的事件实例。

脚本在 LocalSystem 安全上下文中运行。 作为安全措施,只有本地系统管理员或域管理员可以配置脚本使用者。 在运行时之前,不会检查访问权限。 配置使用者后,任何用户都可以触发导致脚本执行以下操作的事件。

未能加载脚本引擎或分析并验证脚本被视为失败。 以下两种情况也被视为失败:脚本中返回了错误的返回码,使用超时终止脚本。

ScriptText 或 ScriptFileName 不得为 NULL。 如果这两个属性均为 NULL 或均不为 NULL,则生成错误。

当 WMI 作为服务运行时,ActiveScriptEventConsumer 运行的脚本不会生成屏幕输出。 使用 MsgBox 的脚本会运行,但不会在屏幕上显示信息。 不支持将 WMI 服务作为可执行文件运行,但 WMI 允许使用 MsgBox 函数的脚本显示输出或接受用户输入。 无法使用 WScript 对象提供的方法,因为 ActiveScriptEventConsumer 不使用 Windows 脚本主机 (WSH)。

示例

TechNet 库中的创建用于监视文件的永久 WMI 事件注册 PowerShell 示例在复杂脚本中使用 ActiveScriptEventConsumer 来设置永久 WMI 事件注册。

要求

要求
最低受支持的客户端
Windows Vista
最低受支持的服务器
Windows Server 2008
命名空间
Root\subscription
MOF
Scrcons.mof
DLL
Scrcons.exe

另请参阅

标准使用者类

基于事件运行脚本

随时接收事件

创建逻辑使用者

__EventConsumer

ScriptingStandardConsumerSetting