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í
Nastavte připojení k poskytovateli serveru SMS.
Vytvořte nový objekt seznamu aktualizací pomocí
SMS_AuthorizationList
třídy .Naplňte nové vlastnosti seznamu aktualizací.
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