Een WMI-klassemethode aanroepen met System.Management

Als u een WMI-klassemethode (Windows Management Instrumentation) wilt aanroepen, roept u in Configuration Manager de InvokeMethod WMI-klasse ManagementClassaan.

Een WMI-klassemethode aanroepen

  1. Stel een verbinding in met de WMI-naamruimte van de Configuration Manager-client. Zie Verbinding maken met de WMI-naamruimte van de Configuration Manager-client met behulp van System.Management.

  2. Maak een ManagementClass met behulp van het ManagementScope pad dat u in stap 1 verkrijgt en met de naam van de klas waarvoor u een methode wilt aanroepen.

  3. Maak een ManagementBaseObject en geef eventuele parameters voor de methode op.

  4. Roep de methode aan met behulp van de ManagementClass objectmethode InvokeMethod .

  5. Bekijk met behulp van de geretourneerde ManagementBaseObjectde geretourneerde parameters.

Voorbeeld

Het volgende C#-codevoorbeeld roept de ISmsClient::GetAssignedSite methode aan om de huidige toegewezen site voor de client op te halen. Vervolgens wordt de toegewezen site met behulp van deze ISmsClient::SetAssignedSite methode opnieuw ingesteld op dezelfde waarde.

Zie Een WMI-klassemethode aanroepen met System.Management voor informatie over het aanroepen van de voorbeeldcode.


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);  
    }  
}  

Deze voorbeeldmethode heeft de volgende parameters:

Parameter Type Beschrijving
scope - ManagementScope Een geldige verbinding met de WMI-provider van de client. Het pad is wortel\ccm.

De code compileren

Naamruimten

Systeem

System.Management

bijeenkomst

System.Management

Robuust programmeren

De uitzondering die kan worden verhoogd is System.Management.ManagementException.

Zie ook

Over Configuration Manager WMI-programmering
Een WMI-klassemethode aanroepen met System.Management
Verbinding maken met de WMI-naamruimte van de Configuration Manager-client met behulp van System.Management
Een asynchrone query uitvoeren met behulp van System.Management
Een synchrone query uitvoeren met behulp van System.Management
Een WMI-object lezen met System.Management