Come chiamare un metodo di classe WMI tramite System.Management

Per chiamare un metodo della classe Strumentazione gestione Windows (WMI) client, in Configuration Manager chiamare il InvokeMethod metodo della classe ManagementClassWMI.

Per chiamare un metodo della classe WMI

  1. Configurare una connessione allo spazio dei nomi WMI del client di Configuration Manager. Per altre informazioni, vedi Come connettersi allo spazio dei nomi WMI del client di Configuration Manager tramite System.Management.

  2. Crea un ManagementClass utilizzando il ManagementScope percorso ottenuto nel passaggio uno e anche il nome della classe in cui vuoi chiamare un metodo.

  3. Create a ManagementBaseObject e specificate i parametri in per il metodo.

  4. Chiamare il metodo utilizzando il metodo oggetto ManagementClassInvokeMethod .

  5. Utilizzando il valore restituito ManagementBaseObject, visualizzare i parametri restituiti.

Esempio

Nell'esempio di codice C# seguente viene chiamato il ISmsClient::GetAssignedSite metodo per ottenere il sito attualmente assegnato per il client. Reimposta quindi il sito assegnato sullo stesso valore utilizzando il ISmsClient::SetAssignedSite metodo.

Per informazioni sulla chiamata del codice di esempio, vedere Come chiamare un metodo di classe WMI utilizzando System.Management.


public void CallMethod(ManagementScope scope)  
{  
    try// Get the client's SMS_Client class.  
    {  
        ManagementClass cls = new ManagementClass(scope.Path.Path, "sms_client", null);  

        // Get current site code.  
        ManagementBaseObject outSiteParams = cls.InvokeMethod("GetAssignedSite", null, null);  

        // Display current site code.  
        Console.WriteLine(outSiteParams["sSiteCode"].ToString());  

        // Set up current site code as input parameter for SetAssignedSite.  
        ManagementBaseObject inParams = cls.GetMethodParameters("SetAssignedSite");  
        inParams["sSiteCode"] = outSiteParams["sSiteCode"].ToString();  

        // Assign the Site code.  
        ManagementBaseObject outMPParams = cls.InvokeMethod("SetAssignedSite", inParams, null);  
    }  
    catch (ManagementException e)  
    {  
        throw new Exception("Failed to execute method", e);  
    }  
}  

Questo metodo di esempio include i parametri seguenti:

Parametro Tipo Descrizione
scope - ManagementScope Connessione valida al provider WMI client. Il percorso è root\ccm.

Compilazione del codice

Spazi dei nomi

Sistema

System.Management

Assembly

System.Management

Programmazione efficiente

L'eccezione che può essere generata è System.Management.ManagementException.

Vedere anche

Informazioni sulla programmazione WMI di Configuration Manager
Come chiamare un metodo di classe WMI tramite System.Management
Come connettersi allo spazio dei nomi WMI del client di Configuration Manager tramite System.Management
Come eseguire una query asincrona tramite System.Management
Come eseguire una query sincrona tramite System.Management
Come leggere un oggetto WMI tramite System.Management