Compartilhar via


Como executar uma consulta síncrona usando System.Management

Para consultar de forma síncrona a WMI (Instrumentação de Gerenciamento do Windows) Configuration Manager cliente, você usa um ManagementObjectSearcher objeto.

Para ler uma propriedade preguiçosa de um objeto Configuration Manager que é retornado em uma consulta, você obtém a instância do objeto, que, por sua vez, recupera quaisquer propriedades de objeto preguiçoso do Provedor de SMS.

Para executar uma consulta síncrona

  1. Configure uma conexão com o namespace WMI do cliente Configuration Manager. Para obter mais informações, consulte Como se conectar ao namespace WMI do cliente Configuration Manager usando System.Management.

  2. Crie uma coleção ManagementObjectSearcher e especifique uma consulta WQL.

  3. Iterar por meio da coleção ManagementObjectSearcher para exibir o ManagementObject para cada objeto WMI retornado pela consulta.

Exemplo

As consultas de exemplo de código C# a seguir para o objeto único SMS_Client que está em um cliente Configuration Manager.

Para obter informações sobre como chamar o código de exemplo, consulte Como chamar um método de classe WMI usando System.Management.


public void QueryObjects(ManagementScope scope)  
{  
    try  
    {  
        ManagementObjectSearcher s = new ManagementObjectSearcher  
            ((scope), new WqlObjectQuery("SELECT * FROM sms_client"));  

        foreach (ManagementObject o in s.Get())  
        {  
            // There is only one instance of SMS_Client, so this should enumerate only once.  
            Console.WriteLine("Client version: " + o["ClientVersion"].ToString());  
        }  
    }  
    catch (System.Management.ManagementException e)  
    {  
        Console.WriteLine("Failed to make query: ", e.Message);  
        throw;  
    }  
}  

Este método de exemplo tem os seguintes parâmetros:

Parâmetro Tipo Descrição
scope ManagementScope Representa um escopo (namespace) para operações de gerenciamento.

Compilando o código

Namespaces

Sistema.

System.Management.

Assembly

System.Management.

Programação robusta

A exceção que pode ser gerada é System.Management.ManagementException.

Confira também

Sobre Configuration Manager programação WMI
Como chamar um método de classe WMI usando System.Management
Como conectar-se ao namespace WMI do cliente Configuration Manager usando System.Management
Como executar uma consulta assíncrona usando System.Management
Como ler um objeto WMI usando System.Management