Consultar o WMI

Uma das principais ferramentas do WMI (Instrumentação de Gerenciamento do Windows) é a capacidade de consultar o repositório WMI para obter informações de classe e instância. Por exemplo, você pode solicitar que o WMI retorne todos os objetos que representam eventos de desligamento do seu sistema desktop. Você também pode recuperar dados de classe, instância ou esquema. A tabela a seguir lista os diferentes tipos de consultas que você pode fazer.

Tópico Descrição
Invocar uma consulta síncrona Descreve como manter um link com o WMI durante todo o processo de consulta. Consultas síncronas são boas para consultas pequenas ou feitas a um sistema local.
Invocar uma consulta assíncrona Descreve como configurar um processo separado para receber consultas. As consultas assíncronas são mais complexas e fornecem um nível mais baixo de segurança, mas geralmente melhoram o desempenho do sistema.

Além de consultar o repositório WMI, você também pode usar a WQL (Linguagem de Consulta WMI) para rotear eventos de notificação para seu aplicativo. Para obter mais informações, consulte Receber um evento WMI.

Observação

Para consultar corretamente o WMI, você deve ter uma boa compreensão da WQL. Uma consulta incorreta, muito complexa ou inadequada pode fazer com que o processador de consultas retorne um erro ou resultados inesperados. Para obter um guia abrangente sobre a WQL, consulte Consultar com WQL.

Existem limites no número de palavras-chave AND e OR que podem ser usadas nas consultas WQL. Um grande número de palavras-chave da WQL usadas em uma consulta complexa pode fazer com que o WMI retorne o código de erro WBEM_E_QUOTA_VIOLATION como um valor HRESULT. O limite de palavras-chave WQL depende da complexidade da consulta.

Ao consultar valores de propriedade com um tipo de dados uint64 ou sint64 em uma linguagem de script como VBScript, o WMI retorna valores de cadeia de caracteres. Ao comparar esses valores, é importante notar que a comparação de cadeias de caracteres pode levar a resultados diferentes da comparação de números, o que pode gerar resultados inesperados. Por exemplo, "10000000000" é menor que "9" ao comparar cadeias de caracteres e 9 é menor que 10000000000 ao comparar números. Para evitar confusão, você deve usar o método CDbl no VBScript quando as propriedades do tipo uint64 ou sint64 forem recuperadas do WMI.

Observação

Para obter mais informações, confira Manipular informações de classe e instância.