Compartilhar via


How to Read Lazy Properties by Using WMI

Para ler uma propriedade em diferido a partir de um objeto de Configuration Manager devolvido numa consulta, obtém a instância do objeto, que por sua vez obtém quaisquer propriedades de objeto lentas do Fornecedor de SMS.

Observação

Se souber o caminho completo para o objeto WMI, uma chamada para o SWbemServices método de classe Get devolverá o objeto WMI juntamente com quaisquer propriedades lentas. Para obter mais informações, veja How to Read a Configuration Manager Object by Using WMI (Como Ler um Objeto Configuration Manager através da WMI).

Para obter mais informações sobre propriedades em diferido, consulte Configuration Manager Propriedades Em Diferido.

Para ler propriedades em diferido

  1. Configure uma ligação ao Fornecedor de SMS. Para obter mais informações, veja How to Connect to an SMS Provider in Configuration Manager by Using WMI (Como Ligar a um Fornecedor de SMS no Configuration Manager através da WMI).

  2. Com o objeto SWbemServices que obtém no primeiro passo, utilize o objeto ExecQuery para consultar Configuration Manager objetos.

  3. Iterar através dos resultados da consulta.

  4. Com o SWbemServices objeto que obtém a partir do primeiro passo, chame Obter para obter o objeto SWbemObject para cada objeto consultado a partir do qual pretende obter propriedades lentas.

Exemplo

O seguinte exemplo de código VBScript consulta todas as SMS_Collection objetos e, em seguida, apresenta os nomes das regras obtidos a CollectionRules partir da propriedade em diferido.

Para obter informações sobre como chamar o código de exemplo, veja Chamar Configuration Manager Fragmentos de Código.

Sub ReadLazyProperty(connection)

    Dim collection
    Dim collections
    Dim collectionLazy
    Dim i

    ' Get all collections.
    Set collections = _
        connection.ExecQuery("Select * From SMS_Collection")

    For Each collection in collections

        Wscript.Echo Collection.Name

        ' Get the collection object.
        Set collectionLazy = connection.Get("SMS_Collection.CollectionID='" + collection.CollectionID + "'")

        ' Display the rule names that are in the lazy property CollectionRules.
        If IsNull(collectionLazy.CollectionRules) Then
            Wscript.Echo "No rules"
        Else
            For i = 0 To UBound(collectionLazy.CollectionRules)
                WScript.Echo "Rule " + collectionLazy.CollectionRules(i).RuleName
            Next
       End If
    Next

End Sub

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

Parâmetro Tipo Descrição
connection - SWbemServices Uma ligação válida ao Fornecedor de SMS.

Compilando o código

Confira também

Windows Management InstrumentationConfiguration Manager Lazy PropertiesObjects overviewHow to Call a Configuration Manager Object Class Method by Using WMIHow to Connect to an SMS Provider in Configuration Manager by Using WMIHow to Create a Configuration Manager Objeto ao Utilizar a WMIComo Eliminar um Objeto de Configuration Manager ao Utilizar a WMIComo Modificar um Objeto de Configuration Manager com a WMIComo Executar uma Consulta de Configuration Manager Assíncrona Ao Utilizar a WMIComo Executar uma Consulta de Configuration Manager Síncrona com a WMIComo Ler um Objeto de Configuration Manager com a WMI