Een Configuration Manager-object wijzigen met behulp van beheerde code

Als u een exemplaar van een Configuration Manager-object wilt wijzigen met behulp van de beheerde sms-provider, gebruikt u de IResultObject-interface van het object om wijzigingen aan te brengen. Vervolgens roept u de methode IResultObject.Put aan om de wijzigingen in te dienen.

Opmerking

De IResultObject-interface voor een object kan worden verkregen via de methode WqlConnectionManager.GetInstance of via andere query's. Voor een voorbeeld waarin asynchrone query's worden gebruikt, raadpleegt u Een asynchrone Configuration Manager-query uitvoeren met beheerde code.

Een Configuration Manager-object wijzigen

  1. Stel een verbinding in met de sms-provider. Zie voor meer informatie Verbinding maken met een sms-provider in Configuration Manager met behulp van beheerde code.

  2. Met behulp van het WqlConnectionManager-object dat u in stap één verkrijgt, roept u GetInstance aan om een IResultObject op te halen voor het vereiste object.

  3. Breng wijzigingen aan in een object met IResultObject.

  4. Commit the changes to the SMS provider with the IResultObject object Put method.

Voorbeeld

De volgende voorbeeldfunctie werkt de beschrijving van een pakket bij op basis van een opgegeven pakket-id en -beschrijving.

Zie Codefragmenten van Configuration Manager aanroepen voor meer informatie over het aanroepen van de voorbeeldcode.


public void ModifyPackageDescription(WqlConnectionManager connection, string packageID, string description)
{
    try
    {
        IResultObject package = connection.GetInstance(@"SMS_Package.PackageID='" + packageID + "'");
        Console.WriteLine("Package Name: " + package["Name"].StringValue);
        Console.WriteLine("Current Description: " + package["Description"].StringValue);

        package["Description"].StringValue = description;

        package.Put();

        Console.WriteLine("New description: " + package["Description"].StringValue);
    }
    catch (SmsException ex)
    {
        Console.WriteLine("Failed to get package. Error: " + ex.Message);
        throw;
    }
}

Deze voorbeeldmethode heeft de volgende parameters:

Parameter Type Beschrijving
connection WqlConnectionManager Een geldige verbinding met de sms-provider.

De code compileren

Naamruimten

Systeem

System.Collections.Generic

System.ComponentModel

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

bijeenkomst

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Robuust programmeren

De uitzonderingen in Configuration Manager die kunnen worden verhoogd zijn SmsConnectionException en SmsQueryException. Deze kunnen samen met SmsException worden opgevangen.

Zie ook

Overzicht van objectenConfiguration Manager Lazy PropertiesEen Configuration Manager objectklassemethode aanroepen met behulp van beheerde codeVerbinding maken met een Configuration Manager provider met behulp van beheerde codeEen Configuration Manager-object met behulp van beheerde codeEen asynchrone Configuration Manager-query uitvoeren met behulp van beheerde codeEen synchrone Configuration Manager-query uitvoeren met behulp van beheerde code Een synchroon Configuration Manager-query uitvoeren Een macro lezen Configuration Manager-object met behulp van beheerde codeLazy Properties lezen met beheerde code