Constantes de API de Script
O WMI usa vários tipos de constantes no parâmetro iflags de chamadas de método na API de Script para o WMI.
Os aplicativos do Visual Basic podem incluir a biblioteca de tipos para a API de script, Wbemdisp.tlb. Os scripts não podem acessar constantes na biblioteca de tipos, a menos que usem as marcas <REFERENCE> ou <OBJECT> do formato de arquivo XML do WSH (Host de Script do Windows), conforme descrito em Usar a biblioteca de tipos de Script do WMI. Caso contrário, um script deve usar o valor da constante.
Constantes
-
Define os níveis de autenticação de segurança.
-
Define como uma operação de gravação em uma classe ou uma instância é realizada.
-
Define os tipos de CIM válidos de um valor de propriedade.
-
Define as configurações para comparação de objetos e são usadas por SWbemObject.CompareTo_.
-
Define um sinalizador de segurança que é usado como um parâmetro em chamadas para o método SWbemLocator.ConnectServer quando uma conexão com o WMI em um computador remoto está falhando.
-
Define os erros que podem ser retornados pela API de Script para chamadas WMI.
-
Define constantes usadas por SWbemServices.ExecQuery, SWbemServices.ExecQueryAsync, SWbemServices.SubclassesOf e SWbemServices.InstancesOf.
-
Define os níveis de representação de segurança. Essas constantes são usadas com SWbemSecurity.
-
Define os formatos de texto de objeto válidos a serem usados pelo SWbemObjectEx.GetText_.
-
Definir privilégios. Essas constantes são usadas com SWbemSecurity para conceder os privilégios necessários para algumas operações.
-
Define a profundidade da enumeração ou da consulta, que determina quantos objetos são retornados por uma chamada.
-
Define o conteúdo do texto do objeto gerado e é usado por SWbemObject.GetObjectText_.
-
Define as constantes de tempo limite. Essa constante é usada por SWbemEventSource.NextEvent.
Combinar sinalizadores
Combine sinalizadores para afetar mais de um aspecto da chamada à API.
Por exemplo, para criar uma chamada semissíncrona, o parâmetro iFlags em uma chamada SWbemServices.ExecQuery_ deve conter dois sinalizadores: WbemFlagReturnImmediately e WbemFlagForwardOnly. O valor de WbemFlagReturnImmediately é 16 e o valor de WbemFlagForwardOnly é 32. Como as constantes não podem ser acessadas pelo nome, os valores desses sinalizadores são combinados, produzindo um valor iFlags de 48.
O exemplo de script a seguir mostra a chamada.
On Error Resume Next
For Each obj in GetObject("WinMgmts:").ExecQuery _
("SELECT * FROM Win32_NTLogEvent WHERE _ LogFile='Application'",,48)
count = count + 1
Next
Nem todos os sinalizadores podem ser combinados, pois muitos são mutuamente exclusivos e podem produzir resultados imprevisíveis.
Tópicos relacionados