Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vous créez une liste de mises à jour qui contient un ensemble de mises à jour logicielles, en Configuration Manager, en créant un instance de la classe SMS_AuthorizationList et en remplissant les propriétés.
Pour créer une liste de mise à jour
Établissez une connexion au fournisseur SMS.
Créez le nouvel objet de liste de mise à jour à l’aide de la
SMS_AuthorizationListclasse.Remplissez les propriétés de la nouvelle liste de mise à jour.
Enregistrez la nouvelle liste de mises à jour et les propriétés.
Exemple
L’exemple de méthode suivant montre comment créer une liste de mises à jour qui contient un ensemble de mises à jour logicielles en créant une instance de la SMS_AuthorizationList classe et en remplissant les propriétés.
Importante
La LocalizedInformation propriété utilisée dans cet exemple requiert un tableau d’objets (tableau incorporé) contenant les informations de description.
Dans l’exemple, la propriété est codée en dur selon l’anglais LocaleID (États-Unis). Si vous avez besoin des paramètres régionaux pour les destinations hors États-Unis. installations, vous pouvez l’obtenir à partir de la propriété de classeLocaleID WMI SMS_Identification Server.
Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code de Configuration Manager.
L’exemple suivant illustre l’appel de sous-routine dans 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)
L’exemple suivant montre l’appel de méthode en 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;
}
}
L’exemple de méthode contient les paramètres suivants :
| Paramètre | Type | Description |
|---|---|---|
Connection |
- Géré : WqlConnectionManager- VBScript : SWbemServices |
Connexion valide au fournisseur SMS. |
newUpdates |
- Géré : Integer tableau- VBScript : Integer tableau |
Tableau des mises à jour associées à la liste des mises à jour. |
newDescriptionInfo |
- Géré : Object tableau- VBScript : Object tableau |
Un tableau d’objets (propriétés incorporées) du type LocalizedInformation. |
Compilation du code
Cet exemple C# requiert :
Espaces de noms
Système
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
Microsoft.ConfigurationManagement.ManagementProvider
Programmation robuste
Pour plus d’informations sur la gestion des erreurs, voir À propos des erreurs du Configuration Manager.
Sécurité de .NET Framework
Pour plus d’informations sur la sécurisation des applications Configuration Manager, voir Administration basée sur les rôles de Configuration Manager.
Voir aussi
À propos des déploiements de mises à jour logiciellesSMS_AuthorizationList