Comment modifier un objet Configuration Manager à l’aide de code managé

Pour modifier une instance d’objet Configuration Manager à l’aide du fournisseur SMS géré, utilisez l’interface IResultObject de l’objet pour apporter des modifications. Vous appelez ensuite la méthode IResultObject.Put pour soumettre les modifications.

Remarque

L’interface IResultObject d’un objet peut être obtenue par le biais de la méthode WqlConnectionManager.GetInstance ou par le biais d’autres requêtes. Pour obtenir un exemple utilisant des requêtes asynchrones, consultez Procédure d’exécution d’une requête Configuration Manager asynchrone à l’aide de code managé.

Pour modifier un objet Configuration Manager

  1. Établissez une connexion au fournisseur SMS. Pour plus d’informations, voir Comment se connecter à un fournisseur SMS dans le Configuration Manager à l’aide du code managé.

  2. À l’aide de l’objet WqlConnectionManager que vous avez obtenu à la première étape, appelez GetInstance pour obtenir un IResultObject pour l’objet requis.

  3. Apportez des modifications à l’objet à l’aide de IResultObject.

  4. Validez les modifications sur le fournisseur SMS avec la méthode Put de l’objet IResultObject.

Exemple

L’exemple de fonction suivant met à jour la description d’un package à partir d’un identificateur et d’une description de package fournis.

Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code de Configuration Manager.


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

Cet exemple de méthode contient les paramètres suivants :

Paramètre Type Description
connection WqlConnectionManager Connexion valide au fournisseur SMS.

Compilation du code

Espaces de noms

Système

System.Collections.Generic

System.ComponentModel

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

Microsoft.ConfigurationManagement.ManagementProvider

adminui.wqlqueryengine

Programmation robuste

Les exceptions du Configuration Manager qui peuvent être levées sont SmsConnectionException et SmsQueryException. Ceux-ci peuvent être interceptés avec SmsException.

Voir aussi

Vue d’ensemble des objetsPropriétés différées de Configuration ManagerConfiguration ManagerComment appeler une méthode de classe d’objet Configuration Manager à l’aide de code managéProcédure pour se connecter à un fournisseur de Configuration Manager à l’aide de code managéComment créer un Objet Configuration Manager à l’aide de code managéProcédure pour exécuter une requête Configuration Manager asynchrone à l’aide de code managéProcédure pour effectuer une requête Configuration Manager synchrone à l’aide de code managéComment lire un Objet Configuration Manager à l’aide de code managéComment lire les propriétés différées à l’aide de code managé