Como iniciar uma sincronização
O catálogo do Asset Intelligence pode ser atualizado manualmente, fora do agendamento normal de sincronização. Uma atualização manual é realizada usando o método RequestCatalogUpdate na classe WMI do servidor SMS_AIProxy.
Importante
Esse método só pode ser chamado uma vez em um período de 12 horas, as chamadas de método subsequentes não funcionarão.
Atualizar o catálogo do Asset Intelligence
Configure uma conexão com o Provedor de SMS. Para obter mais informações, confira Os fundamentos do Provedor de SMS.
Consulte o Provedor de SMS para a instância SMS_AIProxy na qual você deseja atualizar o catálogo.
Chame o método requestCatalogUpdate da classe SMS_AIProxy para executar uma ação na coleção.
Exemplo
O método de exemplo a seguir executa a atualização no servidor fornecido.
Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.
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;
}
}
O método de exemplo tem os seguintes parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
conexão | Gerenciado: WqlConnectionManager VBScript: SWbemServices |
Uma conexão válida com o provedor. |
serverName | Gerenciado: String Vbscript: String |
Nome do servidor para executar a atualização. Esse nome é mapeado para a ProxyName propriedade de uma SMS_AIProxy instância. |
Compilando o código
O exemplo C# requer:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Programação robusta
Para obter mais informações sobre o tratamento de erros, consulte Sobre erros de Configuration Manager.
Segurança do .NET Framework
Para obter mais informações sobre como proteger aplicativos Configuration Manager, consulte Configuration Manager administração baseada em função.