Come avviare una sincronizzazione
Il catalogo di Asset Intelligence può essere aggiornato manualmente, al di fuori della normale pianificazione di sincronizzazione. Un aggiornamento manuale viene eseguito usando il metodo RequestCatalogUpdate nella classe WMI del server SMS_AIProxy.
Importante
Questo metodo può essere chiamato una sola volta entro un periodo di 12 ore, le chiamate al metodo successive non funzioneranno.
Aggiornare il catalogo di Asset Intelligence
Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.
Eseguire una query sul provider SMS per l'istanza di SMS_AIProxy in cui si vuole aggiornare il catalogo.
Chiamare il metodo RequestCatalogUpdate della classe SMS_AIProxy per eseguire un'azione sulla raccolta.
Esempio
Il metodo di esempio seguente esegue l'aggiornamento nel server specificato.
Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice 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;
}
}
Il metodo di esempio include i parametri seguenti:
Parametro | Tipo | Descrizione |
---|---|---|
connessione | Gestito: WqlConnectionManager VBScript: SWbemServices |
Connessione valida al provider. |
Nomeserver | Gestito: String Vbscript: String |
Nome del server in cui eseguire l'aggiornamento. Questo nome esegue il mapping alla ProxyName proprietà di un'istanza SMS_AIProxy di . |
Compilazione del codice
L'esempio C# richiede:
Namespaces
Sistema
System.collections.generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Programmazione efficiente
Per altre informazioni sulla gestione degli errori, vedere Informazioni sugli errori di Configuration Manager.
Sicurezza di .NET Framework
Per altre informazioni sulla protezione delle applicazioni Configuration Manager, vedere Configuration Manager'amministrazione basata sui ruoli.