Guide pratique pour lancer une synchronisation
Le catalogue Asset Intelligence peut être actualisé manuellement, en dehors de la planification de synchronisation normale. Une actualisation manuelle est effectuée à l’aide de la méthode RequestCatalogUpdate sur la classe WMI du serveur SMS_AIProxy.
Importante
Cette méthode ne peut être appelée qu’une seule fois dans une période de 12 heures, les appels de méthode suivants ne fonctionneront pas.
Actualiser le catalogue Asset Intelligence
Configurez une connexion au fournisseur SMS. Pour plus d’informations, consultez Notions de base du fournisseur SMS.
Interrogez le fournisseur SMS pour connaître l’instance SMS_AIProxy sur laquelle vous souhaitez actualiser le catalogue.
Appelez la méthode RequestCatalogUpdate de la classe SMS_AIProxy pour exécuter une action sur la collection.
Exemple
L’exemple de méthode suivant exécute l’actualisation sur le serveur fourni.
Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code Configuration Manager.
Function InitiateSync(connection, serverName)
On Error Resume Next
Dim classObj: Set classObj = connection.Get("SMS_AIProxy")
Dim inParams: Set inParams = classObj.Methods_("RequestCatalogUpdate").InParameters.SpawnInstance_()
Dim outParams
inParams.Properties_.Item("ProxyName") = serverName
Set outParams = connection.ExecMethod("SMS_AIProxy", "RequestCatalogUpdate", inParams)
If Err.Number <> 0 Then
InitiateSync = False
Else
InitiateSync = True
End If
On Error Goto 0
End Function
public void InitiateSync(WqlConnectionManager connection, string serverName)
{
try
{
Dictionary<string, object> inParams = new Dictionary<string, object>();
IResultObject classObj = connection.GetClassObject("SMS_AIProxy");
inParams.Add("ProxyName", serverName);
Console.WriteLine("Requesting catalog update on server " + serverName);
classObj.ExecuteMethod("RequestCatalogUpdate", inParams);
}
catch (SmsException ex)
{
Console.WriteLine(String.Format("Failed to request catalog update on server {0}. Error: {1}", serverName, ex.Message));
throw;
}
}
L’exemple de méthode a les paramètres suivants :
Paramètre | Type | Description |
---|---|---|
connexion | Géré: WqlConnectionManager VBScript : SWbemServices |
Connexion valide au fournisseur. |
serverName | Géré: String Vbscript: String |
Nom du serveur sur lequel exécuter l’actualisation. Ce nom est mappé à la ProxyName propriété d’une SMS_AIProxy instance. |
Compilation du code
L’exemple C# nécessite :
Espaces de noms
Système
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Programmation robuste
Pour plus d’informations sur la gestion des erreurs, consultez À propos des erreurs Configuration Manager.
Sécurité de .NET Framework
Pour plus d’informations sur la sécurisation des applications Configuration Manager, consultez Configuration Manager’administration basée sur les rôles.