Como habilitar ou desabilitar o agente DCM (Configurações de Conformidade)
Em Configuration Manager, você habilita ou desabilitar o Agente cliente de Gerenciamento de Configuração Desejado modificando as configurações do arquivo de controle do site.
Para habilitar ou desabilitar o Agente cliente de Gerenciamento de Configuração Desejado
Configure uma conexão com o Provedor de SMS.
Faça uma conexão com a seção Agente de Cliente de Gerenciamento de Configuração Desejada do arquivo de controle do site usando a classe SMS_SCI_ClientComp .
Faça loop pela matriz de propriedades disponíveis, fazendo alterações conforme necessário.
Confirme as alterações no arquivo de controle do site.
Exemplo
O método de exemplo a seguir habilita ou desabilita o Agente cliente de Gerenciamento de Configuração Desejado usando a classe SMS_SCI_ClientComp para se conectar ao arquivo de controle do site e alterar a Flag
propriedade.
Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.
Sub EnableDisableDCMClientAgent(swbemServices, _
swbemContext, _
siteCode, _
enableDisableFlag)
' Load site control file and get DCM client component section.
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Refresh", , , swbemContext
Set swbemInst = swbemServices.Get("SMS_SCI_ClientComp.Filetype=1,Itemtype='Client Component',Sitecode='" & siteCode & "',ItemName='Configuration Management Agent'", , swbemContext)
' Display DCM client agent settings before change.
Wscript.Echo " "
Wscript.Echo "Properties - Before Change"
Wscript.Echo "---------------------------"
Wscript.Echo swbemInst.ClientComponentName
Wscript.Echo swbemInst.Flags & " (0 = Disabled, 1 = Enabled)"
' Set DCM client agent by setting flags value to 0 or 1 using the enableDisableFlag variable.
swbemInst.Flags = enableDisableFlag
' Save new client agent settings.
swbemInst.Put_ , swbemContext
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Commit", , , swbemContext
Set swbemInst = Nothing
' Refresh in-memory copy of the site control file and get the DCM client component section.
swbemServices.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Refresh", , , swbemContext
Set swbemInst = swbemServices.Get("SMS_SCI_ClientComp.Filetype=1,Itemtype='Client Component',Sitecode='" & siteCode & "',ItemName='Configuration Management Agent'", , swbemContext)
' Display DCM client agent settings after change.
Wscript.Echo " "
Wscript.Echo "Properties - After Change"
Wscript.Echo "---------------------------"
Wscript.Echo swbemInst.ClientComponentName
Wscript.Echo swbemInst.Flags & " (0 = Disabled, 1 = Enabled)"
Set swbemInst = Nothing
End Sub
public void EnableDisableDCMClientAgent(WqlConnectionManager connection,
string siteCode,
string enableDisableFlag)
{
try
{
IResultObject siteDefinition = connection.GetInstance(@"SMS_SCI_ClientComp.FileType=1,ItemType='Client Component',SiteCode='" + siteCode + "',ItemName='Configuration Management Agent'");
// Display DCM client agent settings before change.
Console.WriteLine();
Console.WriteLine("Properties - Before Change");
Console.WriteLine("---------------------------");
Console.WriteLine(siteDefinition["ClientComponentName"].StringValue);
Console.WriteLine(siteDefinition["Flags"].StringValue + " (0 = Disabled, 1 = Enabled)");
// Set DCM client agent by setting flags value to 0 or 1 using the enableDisableFlag variable.
siteDefinition["Flags"].StringValue = enableDisableFlag;
// Save the settings.
siteDefinition.Put();
// Verify change by reconnecting and getting the value again.
IResultObject siteDefinition2 = connection.GetInstance(@"SMS_SCI_ClientComp.FileType=1,ItemType='Client Component',SiteCode='" + siteCode + "',ItemName='Configuration Management Agent'");
// Display DCM client agent settings after change.
Console.WriteLine();
Console.WriteLine("Properties - After Change");
Console.WriteLine("--------------------------");
Console.WriteLine(siteDefinition2["ClientComponentName"].StringValue);
Console.WriteLine(siteDefinition2["Flags"].StringValue + " (0 = Disabled, 1 = Enabled)");
}
catch (SmsException eX)
{
Console.WriteLine("Failed. Error: " + eX.InnerException.Message);
throw;
}
}
O método de exemplo tem os seguintes parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
connection |
-Gerenciado: WqlConnectionManager - VBScript: SWbemServices |
Uma conexão válida com o provedor de SMS. |
swbemContext |
-Vbscript: SWbemContext |
Um objeto de contexto válido. Para obter mais informações, consulte Como adicionar um qualificador de contexto de Configuration Manager usando o WMI. |
siteCode |
-Gerenciado: String -Vbscript: String |
O código do site. |
enableDisableFlag |
-Gerenciado: String -Vbscript: String |
Determina se o Agente cliente de Gerenciamento de Configuração Desejado está habilitado ou desabilitado. 0 – desabilitado 1 – habilitado |
Compilando o código
Este exemplo de C# requer:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
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.
Confira também
Sobre Configurações de Conformidade (DCM) Configuração e Configuração
Sobre o arquivo de controle de site Configuration Manager
Como ler e gravar no arquivo de controle de site Configuration Manager usando código gerenciado
Como ler e gravar no arquivo de controle de site Configuration Manager usando o WMI
Classe WMI do servidor SMS_SCI_ClientComp
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de