Clase ActiveScriptEventConsumer
La clase ActiveScriptEventConsumer ejecuta un script predefinido en un lenguaje de scripting arbitrario cuando se entrega un evento. Esta clase es uno de los consumidores de eventos estándar que proporciona WMI. Para más información, consulte Supervisión y respuesta a eventos con consumidores estándar.
Mofcomp -n:root\<namespace> scrcons.mof
El rendimiento de todas las instancias de ActiveScriptEventConsumer se puede configurar en un sistema estableciendo los valores de la propiedad Timeout o MaximumScripts en una sola instancia de ScriptingStandardConsumerSetting.
Sintaxis
[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;
};
Miembros
La clase LogFileEventConsumer tiene estos tipos de miembros:
Propiedades
La clase ActiveScriptEventConsumer tiene estas propiedades.
-
CreatorSID
-
-
Tipo de datos: matriz uint8
-
Tipo de acceso: solo lectura
Matriz que representa el identificador de seguridad (SID), que identifica de forma única al creador del consumidor de eventos del script activo. Esta propiedad se hereda de __EventConsumer.
-
-
KillTimeout
-
-
Tipo de datos: uint32
-
Tipo de acceso: solo lectura
Número de segundos que el script puede ejecutarse. Si es 0 (cero), que es el valor predeterminado, el script no finaliza.
-
-
MachineName
-
-
Tipo de datos: cadena
-
Tipo de acceso: solo lectura
Nombre del equipo al que WMI envía eventos. Por convención de los consumidores estándar de Microsoft, el consumidor de scripts no se puede ejecutar de forma remota. Los consumidores de terceros también pueden usar esta propiedad. Esta propiedad se hereda de __EventConsumer.
-
-
MaximumQueueSize
-
-
Tipo de datos: uint32
-
Tipo de acceso: solo lectura
Cola máxima, en bytes, del consumidor de eventos del script activo. Esta propiedad se hereda de __EventConsumer.
-
-
Nombre
-
-
Tipo de datos: cadena
-
Tipo de acceso: lectura/escritura
-
Calificadores: Key
Identificador único del consumidor de eventos. Si cambia el nombre del consumidor, el resultado es dos consumidores iguales que tienen nombres diferentes.
-
-
ScriptFileName
-
-
Tipo de datos: cadena
-
Tipo de acceso: solo lectura
Nombre del archivo desde el que se lee el texto del script. Su fin es ser una alternativa a especificar el texto del script en la propiedad ScriptText. El valor de esta propiedad debe ser NULL si la propiedad ScriptText no es NULL.
Nota
Al especificar ScriptFileName, es importante proteger el archivo ejecutable que está iniciando. Si el ejecutable no está en una ubicación segura o no está protegido con una lista de control de acceso segura (ACL), cualquier persona puede reemplazar el ejecutable por otro diferente. Para más información sobre las ACL, consulte Creación de un descriptor de seguridad (SD) para un nuevo objeto en C++.
-
-
ScriptingEngine
-
-
Tipo de datos: cadena
-
Tipo de acceso: solo lectura
Nombre del motor de scripting que se va a usar, por ejemplo, "VBScript". El valor de esta propiedad no puede ser NULL.
-
-
ScriptText
-
-
Tipo de datos: cadena
-
Tipo de acceso: solo lectura
Texto del script que se expresa en un lenguaje conocido por el motor de scripting. El valor de esta propiedad debe ser NULL si la propiedad ScriptFileName no es NULL.
-
Comentarios
Esta clase se deriva de la clase abstracta __EventConsumer. Se encuentra en el espacio de nombres raíz o de la suscripción.
Cuando se especifica el texto de un script en la instancia del consumidor de eventos, el script tiene acceso a la instancia de evento en la variable de entorno del script TargetEvent.
Los scripts se ejecutan en el contexto de seguridad LocalSystem. Como medida de seguridad, solo un administrador del sistema local o un administrador de dominio pueden configurar el consumidor de scripting. Los derechos de acceso no se comprueban hasta el tiempo de ejecución. Una vez configurado el consumidor, cualquier usuario puede desencadenar el evento que hace que el script se ejecute.
Error al cargar el motor de scripting o a analizar y validar que el script se considera un error. Los códigos de retorno de error del script y la finalización del script mediante un tiempo de espera también se consideran errores.
ScriptText o ScriptFileName no deben tener el valor NULL. Si los valores de ambas propiedades son NULL o no NULL, se genera un error.
Cuando WMI se ejecuta como servicio, los scripts ejecutados por ActiveScriptEventConsumer no generan una salida por pantalla. Los scripts que usan MsgBox se ejecutan, pero no muestran información en la pantalla. No se admite la ejecución del servicio WMI como un archivo ejecutable, pero WMI permite scripts que usen la función MsgBox que muestren la salida o acepten la entrada del usuario. No se puede usar ninguno de los métodos proporcionados por el objeto WScript, porque ActiveScriptEventConsumer no usa Windows Script Host (WSH).
Ejemplos
El ejemplo de PowerShell Creación de un registro de eventos de WMI permanente para supervisar archivos en la Galería de TechNet usa ActiveScriptEventConsumer como parte de un script complejo para configurar un registro de eventos de WMI permanente.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows Vista |
Servidor mínimo compatible |
Windows Server 2008 |
Espacio de nombres |
Root\subscription |
MOF |
|
Archivo DLL |
|