Jak włączyć lub wyłączyć agenta ustawień zgodności (DCM)

W Configuration Manager należy włączyć lub wyłączyć agenta klienta zarządzania żądaną konfiguracją, modyfikując ustawienia pliku kontroli lokacji.

Aby włączyć lub wyłączyć agenta klienta zarządzania żądaną konfiguracją

  1. Skonfiguruj połączenie z dostawcą programu SMS.

  2. Nawiązywanie połączenia z sekcją Agent klienta zarządzania żądaną konfiguracją pliku kontroli lokacji przy użyciu klasy SMS_SCI_ClientComp .

  3. Przeprowadź pętlę przez tablicę dostępnych właściwości, wprowadzając zmiany zgodnie z potrzebami.

  4. Zatwierdź zmiany w pliku kontroli lokacji.

Przykład

Poniższa przykładowa metoda włącza lub wyłącza agenta klienta zarządzania żądaną konfiguracją przy użyciu klasy SMS_SCI_ClientComp w celu nawiązania połączenia z plikiem kontroli lokacji i zmiany Flag właściwości.

Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu Configuration Manager.


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;  
    }  

}  

Przykładowa metoda ma następujące parametry:

Parametr Wpisać Opis
connection -Zarządzane: WqlConnectionManager
- VBScript: SWbemServices
Prawidłowe połączenie z dostawcą programu SMS.
swbemContext -Vbscript: SWbemContext Prawidłowy obiekt kontekstu. Aby uzyskać więcej informacji, zobacz How to Add a Configuration Manager Context Qualifier by Using WMI (Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu usługi WMI).
siteCode -Zarządzane: String
-Vbscript: String
Kod witryny.
enableDisableFlag -Zarządzane: String
-Vbscript: String
Określa, czy agent klienta zarządzania żądaną konfiguracją jest włączony, czy wyłączony.

0 — wyłączone

1 — włączone

Kompilowanie kodu

Ten przykład języka C# wymaga:

Obszary nazw

System

System.collections.generic

System.text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Zestawu

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Niezawodne programowanie

Aby uzyskać więcej informacji na temat obsługi błędów, zobacz Informacje o błędach Configuration Manager.

zabezpieczenia .NET Framework

Aby uzyskać więcej informacji na temat zabezpieczania aplikacji Configuration Manager, zobacz Configuration Manager administracja oparta na rolach.

Zobacz też

Informacje o konfiguracji i konfiguracji ustawień zgodności (DCM)
Informacje o pliku kontrolki lokacji Configuration Manager
Jak odczytywać i zapisywać w pliku kontroli lokacji Configuration Manager przy użyciu kodu zarządzanego
Jak odczytywać i zapisywać w pliku kontroli lokacji Configuration Manager przy użyciu usługi WMI
SMS_SCI_ClientComp Server WMI Class