Поделиться через


Удаление Обновления из пакета развертывания

Вы удаляете обновления из пакета развертывания обновлений программного обеспечения в Configuration Manager путем получения экземпляра класса SMS_SoftwareUpdatesPackage и с помощью метода RemoveContent.

Удаление обновлений из пакета развертывания обновлений программного обеспечения

  1. Настройте подключение к поставщику SMS.

  2. Получите существующий объект пакета с помощью SMS_SoftwareUpdatesPackage класса .

  3. Удалите содержимое обновлений из существующего пакета управления обновлениями программного обеспечения с помощью RemoveContent метода .

Пример

В следующем примере метода показано, как удалить обновления из пакета развертывания обновлений программного обеспечения с помощью SMS_SoftwareUpdatesPackage класса и RemoveContent метода .

Важно!

Пример VBScript не был включен, так как RemoveContent метод не возвращается из вызова метода при сбое. Это известная проблема, которая изучается.

Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.

Пример вызова метода в C#:


// Prework for RemoveUpdatesfromSUMDeploymentPackage.  
// Define the array of Content IDs to load into the content parameters.  
int[] newArrayContentIDs2 = new int[] { 82 };  

// Load the update content parameters into an object to pass to the method.  
Dictionary<string, object> removeContentParameters = new Dictionary<string, object>();  
removeContentParameters.Add("ContentIDs", newArrayContentIDs2);  
removeContentParameters.Add("bRefreshDPs", true);  

// Call the RemoveUpdatesfromSUMDeploymentPackage method.  
RemoveUpdatesfromSUMDeploymentPackage(WMIConnection,  
                                      "ABC00001",  
                                      removeContentParameters);  


public void RemoveUpdatesfromSUMDeploymentPackage(WqlConnectionManager connection,  
                                                  string existingSUMPackageID,  
                                                  Dictionary<string, object> removeContentParameters)  
{  
    try  
    {  
        // Get the specific SUM Deployment Package to change.  
        IResultObject existingSUMDeploymentPackage = connection.GetInstance(@"SMS_SoftwareUpdatesPackage.PackageID='" + existingSUMPackageID + "'");  

        // Remove updates from the existing SUM Deployment Package using the RemoveContent method.  
        // Note: The method will throw an exception, if the method is not able to add the content.  
        IResultObject result = existingSUMDeploymentPackage.ExecuteMethod("RemoveContent", removeContentParameters);  

        // Output a success message.  
        Console.WriteLine("Removed content from the deployment package. ");  

    }  
    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to remove content from the deployment package. Error: " + ex.Message);  
        throw;  
    }  
}  

Метод примера имеет следующие параметры:

Параметр Тип Описание
connection -Управляемых: WqlConnectionManager Допустимое подключение к поставщику SMS.
existingSUMPackageID -Управляемых: String Идентификатор пакета для существующего пакета управления обновлениями программного обеспечения.
removecontentParameters -Управляемых: dictionary object Набор параметров (ContentIDs, bRefreshDPs), который передается в метод и используется с вызовом RemoveContent метода.

Компиляция программы

Для этого примера на C# требуется следующее:

Пространства имен

System;

System.Collections.Generic;

System.Text

Майкрософт. ConfigurationManagement.ManagementProvider

Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Надежное программирование

Дополнительные сведения об обработке ошибок см. в разделе Сведения об ошибках Configuration Manager.

Безопасность .NET Framework

Дополнительные сведения о защите приложений Configuration Manager см. в статье Configuration Manager администрирование на основе ролей.

См. также

Сведения о развертываниях обновлений программного обеспечения. Назначение пакета точке распространения
SMS_SoftwareUpdatesPackage
Метод RemoveContent в SMS_SoftwareUpdatesPackage класса