Sdílet prostřednictvím


Jak vytvořit seznam aktualizací

V nástroji Configuration Manager vytvoříte seznam aktualizací, který obsahuje sadu aktualizací softwaru, vytvořením instance třídy SMS_AuthorizationList a naplněním vlastností.

Vytvoření seznamu aktualizací

  1. Nastavte připojení k poskytovateli serveru SMS.

  2. Vytvořte nový objekt seznamu aktualizací pomocí SMS_AuthorizationList třídy .

  3. Naplňte nové vlastnosti seznamu aktualizací.

  4. Uložte nový seznam aktualizací a vlastnosti.

Příklad

Následující příklad metody ukazuje, jak vytvořit seznam aktualizací, který obsahuje sadu aktualizací softwaru vytvořením instance SMS_AuthorizationList třídy a naplněním vlastností.

Důležité

Vlastnost použitá LocalizedInformation v tomto příkladu vyžaduje pole objektů (vložené pole) popisných informací.

V tomto příkladu LocaleID je vlastnost pevně zakódovaná na angličtinu (USA). Pokud potřebujete národní prostředí pro jiné uživatele než USA můžete ho získat z vlastnosti SMS_Identification serverová třídaLocaleID služby WMI.

Informace o volání ukázkového kódu najdete v tématu Volání fragmentů kódu nástroje Configuration Manager.

Následující příklad ukazuje volání podprogramu v jazyce Visual Basic:


' Prework for CreateSUMUpdateList  
' Create the array of CI_IDs.  
dim newUpdates   
newUpdates = Array(9)  

' Create and populate an SMS_CI_LocalizedProperties object.  
set SMSCILocalizedProperties = swbemservices.Get("SMS_CI_LocalizedProperties").SpawnInstance_  

SMSCILocalizedProperties.Description = "Test Description"  
SMSCILocalizedProperties.DisplayName = "Test Display Name"  
SMSCILocalizedProperties.InformativeURL = "Test URL"  
SMSCILocalizedProperties.LocaleID = "1033"  

' Create an array to hold the SMS_CI_LocalizedProperties object.  
dim newDescriptionInfo  
newDescriptionInfo = Array(SMSCILocalizedProperties)  

' Call the CreateSUMUpdateList method.  
Call CreateSUMUpdateList(swbemServices,       _  
                         newUpdates,          _  
                         newDescriptionInfo)  

Následující příklad ukazuje volání metody v jazyce C#:


// Prework for CreateSUMUpdateList  
// Create array list (to hold the array of Localized Properties).  
List<IResultObject> newDescriptionInfo = new List <IResultObject>();    
IResultObject SMSCILocalizedProperties = WMIConnection.CreateEmbeddedObjectInstance("SMS_CI_LocalizedProperties");  

// Populate the initial array values (this could be a loop to added more localized info).  
SMSCILocalizedProperties["Description"].StringValue = "4 CI_IDs - 9,34,53,72 ";  
SMSCILocalizedProperties["DisplayName"].StringValue = "Test Display Name";   
SMSCILocalizedProperties["InformativeURL"].StringValue = "Test URL";  
SMSCILocalizedProperties["LocaleID"].StringValue = "1033";  

// Add the 'embedded properties' to newDescriptionInfo.  
newDescriptionInfo.Add(SMSCILocalizedProperties);  

// Create the array of CI_IDs.  
int[] newCI_ID = new int[] { 9, 34, 53, 72 };  

// Call the CreateSUMUpdateList method.  
SUMSnippets.CreateSUMUpdateList(WMIConnection,  
                                newCI_ID,  
                                newDescriptionInfo);  


Sub CreateSUMUpdateList(connection,         _  
                        newUpdates,         _  
                        newDescriptionInfo)                                  

    ' Create the new UpdateList object.   
    Set newUpdateList = connection.Get("SMS_AuthorizationList").SpawnInstance_  

    ' Populate the UpdateList properties.  
    ' Updates is an int32 array that maps to the CI_ID in SMS_SoftwareUpdate.  
    newUpdateList.Updates = newUpdates  
    ' Need to pass embedded properties (LocalizedInformation) here.   
    newUpdateList.LocalizedInformation = newDescriptionInfo  

    ' Save the new UpdateList and properties.  
    newUpdateList.Put_   

    ' Output the new UpdateList name.  
    Wscript.Echo "Created Update List " & newUpdateList.LocalizedDisplayName                    

End Sub  

public void CreateSUMUpdateList(WqlConnectionManager connection,                                   
                                 int [] newUpdates,  
                                 List<IResultObject> newDescriptionInfo)  
{  
    try  
    {  
        // Create the new SMS_AuthorizationList object.  
        IResultObject newUpdateList = connection.CreateInstance("SMS_AuthorizationList");  

        // Populate the new SMS_AuthorizationList object properties.  
        // Updates is an int32 array that maps to the CI_ID in SMS_SoftwareUpdate.  
        newUpdateList["Updates"].IntegerArrayValue = newUpdates;  
        // Pass embedded properties (LocalizedInformation) here.  
        newUpdateList.SetArrayItems("LocalizedInformation", newDescriptionInfo);  

        // Save changes.  
        newUpdateList.Put();  

        Console.WriteLine();  
        Console.WriteLine("Created Update List. " );  

    }  

    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to create update list. Error: " + ex.Message);  
        throw;  
    }  
}  

Ukázková metoda má následující parametry:

Parametr Typ Popis
Connection -Řízen: WqlConnectionManager
- VBScript: SWbemServices
Platné připojení k poskytovateli serveru SMS.
newUpdates - Spravované: Integer pole
- VBScript: Integer pole
Pole aktualizací, které jsou přidruženy k seznamu aktualizací.
newDescriptionInfo - Spravované: Object pole
- VBScript: Object pole
Pole objektů (vložené vlastnosti) typu LocalizedInformation.

Kompilace kódu

Tento příklad jazyka C# vyžaduje:

Obory názvů

Systém

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Shromáždění

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Robustní programování

Další informace o zpracování chyb najdete v tématu Informace o chybách nástroje Configuration Manager.

Zabezpečení rozhraní .NET Framework

Další informace o zabezpečení aplikací Nástroje Configuration Manager najdete v tématu Správa na základě rolí nástroje Configuration Manager.

Viz také

Informace o nasazení aktualizací softwaruSMS_AuthorizationList