Compartilhar via


Classe ActiveScriptEventConsumer

A classe ActiveScriptEventConsumer executa um script predefinido em uma linguagem de script arbitrária quando um evento é entregue a ele. Essa classe é um dos consumidores de eventos padrão que o WMI fornece. Para obter mais informações, confira Monitoramento e resposta a eventos com consumidores padrão.

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

Você pode configurar o desempenho de todas as instâncias de ActiveScriptEventConsumer em um sistema definindo os valores da propriedade Timeout ou MaximumScripts na instância única de ScriptingStandardConsumerSetting.

Sintaxe

[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;
};

Membros

A classe ActiveScriptEventConsumer tem estes tipos de membros:

Propriedades

A classe ActiveScriptEventConsumer tem estas propriedades.

CreatorSID

Tipo de dados: matriz uint8

Tipo de acesso: Somente leitura

Matriz que representa o SID (identificador de segurança), que identifica exclusivamente o criador do consumidor de eventos de script ativo. Essa propriedade é herdada de __EventConsumer.

KillTimeout

Tipo de dados: uint32

Tipo de acesso: Somente leitura

Número, em segundos, que o script tem permissão para ser executado. Se for zero (0), que é o padrão, o script não será encerrado.

MachineName

Tipo de dados: string

Tipo de acesso: Somente leitura

Nome do computador para o qual o WMI envia eventos. Por convenção dos consumidores padrão da Microsoft, o consumidor de script não pode ser executado remotamente. Consumidores de terceiros também podem usar essa propriedade. Essa propriedade é herdada de __EventConsumer.

MaximumQueueSize

Tipo de dados: uint32

Tipo de acesso: Somente leitura

Fila máxima, em bytes, para o consumidor de eventos de script ativo. Essa propriedade é herdada de __EventConsumer.

Nome

Tipo de dados: string

Tipo de acesso: leitura/gravação

Qualificadores: Chave

Identificador exclusivo para o consumidor de eventos. Se você renomear o consumidor, o resultado será dois consumidores iguais que têm nomes diferentes.

ScriptFileName

Tipo de dados: string

Tipo de acesso: Somente leitura

Nome do arquivo do qual o texto do script é lido, pretendido como uma alternativa para especificar o texto do script na propriedade ScriptText. Essa propriedade deverá ser NULL se a propriedade ScriptText não for NULL.

Observação

Ao especificar o ScriptFileName, é importante proteger o executável que você está iniciando. Se o executável não estiver em um local seguro ou protegido por uma ACL (lista de controle de acesso) forte, qualquer pessoa poderá substituir o executável por outro. Para obter mais informações sobre ACLs, consulte Criar um descritor de segurança (SD) para um novo objeto em C++.

ScriptingEngine

Tipo de dados: string

Tipo de acesso: Somente leitura

Nome do mecanismo de script a ser usado, por exemplo, "VBScript". Essa propriedade não pode ser NULL.

ScriptText

Tipo de dados: string

Tipo de acesso: Somente leitura

Texto do script expresso em uma linguagem conhecida pelo mecanismo de script. Essa propriedade deverá ser NULL se a propriedade ScriptFileName não for NULL.

Comentários

Essa classe é derivada da classe abstrata __EventConsumer. Ela está localizada no namespace root\subscription.

Quando o texto de um script é especificado na instância do consumidor de eventos, o script tem acesso à instância de evento na variável de ambiente de script TargetEvent.

Os scripts são executados no contexto de segurança LocalSystem. Como medida de segurança, somente um administrador do sistema local ou um administrador de domínio pode configurar o consumidor de scripts. Os direitos de acesso não são verificados até o tempo de execução. Depois que o consumidor é configurado, qualquer usuário pode disparar o evento que faz com que o script seja .

Uma falha ao carregar o mecanismo de script ou analisar e validar o script é considerada uma falha. Os códigos de retorno de erro do script e o encerramento do script usando um tempo limite também são considerados falhas.

ScriptText ou ScriptFileName não devem ser NULL. Se ambas as propriedades forem NULL ou não forem NULL, um erro será gerado.

Quando o WMI é executado como um serviço, os scripts executados por ActiveScriptEventConsumer não geram saída de tela. Os scripts que usam MsgBox são executados, mas não exibem informações na tela. Não há suporte para a execução do serviço WMI como um arquivo executável, mas o WMI permite que scripts que usam a função MsgBox exibam a saída ou aceitem a entrada do usuário. Nenhum dos métodos fornecidos pelo objeto WScript pode ser usado porque ActiveScriptEventConsumer não usa o WSH (Windows Script Host).

Exemplos

O exemplo Criar registro de evento WMI permanente para monitorar arquivos do PowerShell na Galeria do TechNet usa ActiveScriptEventConsumer como parte de um script complexo para configurar um registro de evento WMI permanente.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista
Servidor mínimo com suporte
Windows Server 2008
Namespace
Root\subscription
MOF
Scrcons.mof
DLL
Scrcons.exe

Confira também

Classes de consumidor padrão

Executar um script com base em um evento

Receber eventos o tempo todo

Criar um consumidor lógico

__EventConsumer

ScriptingStandardConsumerSetting