Klasse ActiveScriptEventConsumer
Die Klasse ActiveScriptEventConsumer führt ein vordefiniertes Skript in einer beliebigen Skriptsprache aus, wenn ein Ereignis an sie übermittelt wird. Diese Klasse ist einer der Standardereignisconsumer, die WMI bereitstellt. Weitere Informationen finden Sie unter Überwachen von und Reagieren auf Ereignisse mit Standardconsumern.
Mofcomp -n:root\<namespace> scrcons.mof
Sie können die Leistung aller Instanzen von ActiveScriptEventConsumer auf einem System konfigurieren, indem Sie die Werte der Eigenschaft Timeout oder MaximumScripts in einer einzelnen Instanz von ScriptingStandardConsumerSetting festlegen.
Syntax
[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;
};
Member
Die Klasse ActiveScriptEventConsumer verfügt über die folgenden Member-Typen:
Eigenschaften
Die Klasse ActiveScriptEventConsumer verfügt über diese Eigenschaften.
-
CreatorSID
-
-
Datentyp: uint8-Array
-
Zugriffstyp: Schreibgeschützt
Array, das die Sicherheits-ID (SID) darstellt, die den Ersteller des Active Script Event-Consumers eindeutig identifiziert. Diese Eigenschaft wird von __EventConsumer geerbt.
-
-
KillTimeout
-
-
Datentyp: uint32
-
Zugriffstyp: Schreibgeschützt
Zahl in Sekunden, die das Skript ausgeführt werden darf. Bei der Standardeinstellung 0 (null) wird das Skript nicht beendet.
-
-
MachineName
-
-
Datentyp: string
-
Zugriffstyp: Schreibgeschützt
Name des Computers, an den WMI Ereignisse sendet. Gemäß der Konvention von Microsoft-Standardconsumer kann der Skript-Consumer nicht remote ausgeführt werden. Drittanbieter können diese Eigenschaft ebenfalls verwenden. Diese Eigenschaft wird von __EventConsumer geerbt.
-
-
MaximumQueueSize
-
-
Datentyp: uint32
-
Zugriffstyp: Schreibgeschützt
Maximale Warteschlange (in Bytes) für den Active Script Event-Consumer. Diese Eigenschaft wird von __EventConsumer geerbt.
-
-
Name
-
-
Datentyp: string
-
Zugriffstyp: Lesen/Schreiben
-
Qualifizierer: Schlüssel
Eindeutiger Bezeichner für den Ereignis-Consumer. Wenn Sie den Consumer umbenennen, ergeben sich zwei gleiche Consumer mit unterschiedlichen Namen.
-
-
ScriptFileName
-
-
Datentyp: String
-
Zugriffstyp: Schreibgeschützt
Name der Datei, aus der der Skripttext gelesen wird, ist als Alternative zum Angeben des Skripttexts in der Eigenschaft ScriptText vorgesehen. Diese Eigenschaft muss NULL sein, wenn die Eigenschaft ScriptText nicht NULL ist.
Hinweis
Wenn Sie ScriptFileName angeben, ist es wichtig, die ausführbare Datei zu schützen, die Sie starten. Wenn sich die ausführbare Datei nicht an einem sicheren Speicherort befindet oder mit einer starken Zugriffssteuerungsliste (Access Control List, ACL) geschützt ist, kann jeder die ausführbare Datei durch eine andere ersetzen. Weitere Informationen zu ACLs finden Sie unter Erstellen einer Sicherheitsbeschreibung für ein neues Objekt in C++.
-
-
ScriptingEngine
-
-
Datentyp: String
-
Zugriffstyp: Schreibgeschützt
Name der zu verwendenden Skript-Engine, z. B. "VBScript". Diese Eigenschaft kann nicht NULL sein.
-
-
ScriptText
-
-
Datentyp: String
-
Zugriffstyp: Schreibgeschützt
Text des Skripts, der in einer Sprache ausgedrückt wird, die der Skripterstellungs-Engine bekannt ist. Diese Eigenschaft muss NULL sein, wenn die Eigenschaft ScriptFileName nicht NULL ist.
-
Bemerkungen
Diese Klasse wird von der abstrakten Klasse __EventConsumer abgeleitet. Sie befindet sich im Namespace root\subscription.
Wenn der Text eines Skripts in der Ereignisconsumer-Instanz angegeben wird, hat das Skript Zugriff auf die Ereignisinstanz in der Skriptumgebungsvariablen TargetEvent.
Die Skripts werden im LocalSystem-Sicherheitskontext ausgeführt. Als Sicherheitsmaßnahme kann nur ein lokaler Systemadministrator oder ein Domänenadministrator den Skript-Consumer konfigurieren. Zugriffsrechte werden erst nach der Laufzeit überprüft. Nachdem der Consumer konfiguriert wurde, kann jeder Benutzer das Ereignis auslösen, das das Skript auslöst.
Fehler beim Laden der Skript-Engine oder Analyse und Überprüfung des Skripts wird als Fehler betrachtet. Fehlerrückgabecodes aus dem Skript und Beenden des Skripts mithilfe eines Timeouts werden ebenfalls als Fehler betrachtet.
ScriptText oder ScriptFileName dürfen nicht NULL sein. Wenn beide Eigenschaften NULL oder nicht NULL sind, wird ein Fehler generiert.
Wenn WMI als Dienst ausgeführt wird, generieren Skripts, die von ActiveScriptEventConsumer ausgeführt werden, keine Bildschirmausgabe. Skripts, die MsgBox verwenden, werden zwar ausgeführt, aber keine Informationen auf dem Bildschirm angezeigt. Das Ausführen des WMI-Diensts als ausführbare Datei wird nicht unterstützt, aber WMI ermöglicht Skripts, die die Funktion MsgBox verwenden, die Ausgabe anzuzeigen oder Benutzereingaben zu akzeptieren. Keine der vom Objekt WScript bereitgestellten Methoden kann verwendet werden, da ActiveScriptEventConsumer keinen Windows Script Host (WSH) verwendet.
Beispiele
Das PowerShell-Beispiel Erstellen einer permanenten WMI-Ereignisregistrierung zum Überwachen von Dateien im TechNet-Katalog verwendet ActiveScriptEventConsumer als Teil eines komplexen Skripts, um eine permanente WMI-Ereignisregistrierung einzurichten.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows Vista |
Unterstützte Mindestversion (Server) |
Windows Server 2008 |
Namespace |
Root\subscription |
MOF |
|
DLL |
|