Como listar atribuições de configuração
Os exemplos de código a seguir mostram como listar as atribuições de linha de base de configuração atuais e um conjunto específico de propriedades para cada atribuição em Configuration Manager.
Para listar atribuições de configuração
Configure uma conexão com o Provedor de SMS.
Consulta para todas as instâncias
SMS_BaselineAssignment
.Faça loop pela matriz de atribuições de linha de base de configuração disponíveis, listando cada atribuição de linha de base de configuração e propriedades específicas.
Exemplo
O método de exemplo a seguir mostra como listar as atribuições de linha de base de configuração atuais e um conjunto específico de propriedades para cada atribuição em Configuration Manager.
Para obter informações sobre como chamar o código de exemplo, consulte Chamando Configuration Manager Snippets de Código.
Sub DCMAssignments_ListProperties(swbemServices)
On Error Resume Next
Dim queryBaselineAssignmentResults
Dim assignment
' Query assignments.
Set queryBaselineAssignmentResults = swbemServices.ExecQuery("Select * From SMS_BaselineAssignment", , 0)
If Err.Number<>0 Then
Wscript.Echo "Couldn't get assignments."
Exit Sub
End If
On Error Goto 0
' List assignments and various assignment's properties.
For Each assignment In queryBaselineAssignmentResults
Wscript.Echo ""
Wscript.Echo "Listing Assignment Properties for Assignment ID: " & assignment.AssignmentID
Wscript.Echo "Listing Assignment Properties for Assignment Description: " & assignment.AssignmentDescription
Wscript.Echo "-------------------------------------------------------------------------------"
Wscript.Echo "ApplyToSubTargets: " & assignment.ApplyToSubTargets
Wscript.Echo "AssignmentAction: " & assignment.AssignmentAction
Wscript.Echo "AssignmentID: " & assignment.AssignmentID
Wscript.Echo "AssignmentName: " & assignment.AssignmentName
Wscript.Echo "AssignmentDescription: " & assignment.AssignmentDescription
Wscript.Echo "AssignmentUniqueID: " & assignment.AssignmentUniqueID
Wscript.Echo "Collection: " & assignment.TargetCollectionID
Wscript.Echo "CreationTime: " & assignment.CreationTime
Wscript.Echo "DesiredConfigType: " & assignment.DesiredConfigType
Wscript.Echo "DPLocality: " & assignment.DPLocality
Wscript.Echo "EvaluationSchedule: " & assignment.EvaluationSchedule
Wscript.Echo "LogComplianceToWinEvent: " & assignment.LogComplianceToWinEvent
Wscript.Echo "NotifyUser: " & assignment.NotifyUser
Wscript.Echo "SendDetailedNonComplianceStatus: " & assignment.SendDetailedNonComplianceStatus
Wscript.Echo "SourceSite: " & assignment.SourceSite
Wscript.Echo "StartTime: " & assignment.StartTime
Wscript.Echo "SuppressReboot: " & assignment.SuppressReboot
Wscript.Echo "UseGMTTimes: " & assignment.UseGMTTimes
Wscript.Echo "==============================================================================="
Next
If queryBaselineAssignmentResults.Count = 0 Then
Wscript.Echo " no query results"
End If
set queryBaselineAssignmentResults = Nothing
End Sub
public void DCMAssignments_ListProperties(WqlConnectionManager connection)
{
IResultObject baselineAssignments = connection.QueryProcessor.ExecuteQuery("SELECT * FROM SMS_BaselineAssignment");
try
{
foreach (IResultObject assignment in baselineAssignments)
{
Console.WriteLine("Listing Assignment Properties for Assignment ID: " + assignment["AssignmentID"].StringValue);
Console.WriteLine("Listing Assignment Properties for Assignment Description: " + assignment["AssignmentDescription"].StringValue);
Console.WriteLine("--------------------------------------------------------------------------------");
Console.WriteLine("ApplyToSubTargets: " + assignment["ApplyToSubTargets"].BooleanValue);
Console.WriteLine("AssignmentAction: " + assignment["AssignmentAction"].IntegerValue);
Console.WriteLine("AssignmentID: " + assignment["AssignmentID"].StringValue);
Console.WriteLine("AssignmentName: " + assignment["AssignmentName"].StringValue);
Console.WriteLine("AssignmentDescription: " + assignment["AssignmentDescription"].StringValue);
Console.WriteLine("AssignmentUniqueID: " + assignment["AssignmentUniqueID"].StringValue);
Console.WriteLine("Collection: " + assignment["TargetCollectionID"].StringValue);
Console.WriteLine("CreationTime: " + assignment["CreationTime"].StringValue);
Console.WriteLine("DesiredConfigType: " + assignment["DesiredConfigType"].StringValue);
Console.WriteLine("DPLocality: " + assignment["DPLocality"].IntegerValue);
Console.WriteLine("EvaluationSchedule: " + assignment["EvaluationSchedule"].StringValue);
Console.WriteLine("LogComplianceToWinEvent: " + assignment["LogComplianceToWinEvent"].BooleanValue);
Console.WriteLine("NotifyUser: " + assignment["NotifyUser"].BooleanValue);
Console.WriteLine("SendDetailedNonComplianceStatus: " + assignment["SendDetailedNonComplianceStatus"].BooleanValue);
Console.WriteLine("SourceSite: " + assignment["SourceSite"].StringValue);
Console.WriteLine("StartTime: " + assignment["StartTime"].StringValue);
Console.WriteLine("SuppressReboot: " + assignment["SuppressReboot"].IntegerValue);
Console.WriteLine("UseGMTTimes: " + assignment["UseGMTTimes"].BooleanValue);
// Process the array.
int[] arrayofAssignedCIs = assignment["AssignedCIs"].IntegerArrayValue;
Console.Write("Assigned baseline ID(s): ");
foreach (int i in arrayofAssignedCIs)
{
Console.Write(i + " ");
}
Console.WriteLine();
// NULL BY DEFAULT (on a generic assignment created through the user interface).
//
//Console.WriteLine("EnforcementDeadline: " + assignment["EnforcementDeadline"].StringValue);
//Console.WriteLine("ExpirationTime: " + assignment["ExpirationTime"].StringValue);
//Console.WriteLine("NonComplianceCriticality: " + assignment["NonComplianceCriticality"].IntegerValue);
//Console.WriteLine("OverrideServiceWindows: " + assignment["OverrideServiceWindows"].BooleanValue);
//Console.WriteLine("RebootOutsideOfServiceWindows: " + assignment["RebootOutsideOfServiceWindows"].BooleanValue);
//Console.WriteLine("WoLEnabled: " + assignment["WoLEnabled"].BooleanValue);
Console.WriteLine("================================================================================");
}
}
catch (SmsException ex)
{
Console.WriteLine("Failed to list assignment properties. Error: " + ex.Message);
throw;
}
}
O método de exemplo tem os seguintes parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
- connection - swbemServices |
-Gerenciado: WqlConnectionManager - VBScript: SWbemServices |
Uma conexão válida com o provedor de SMS. |
Compilando o código
Namespaces
System
System.Collections.Generic
System.ComponentModel
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 linhas de base de configuração e itens de configuração
Visão geral de objetoscomo se conectar a um provedor de Configuration Manager usando código gerenciado
Como se conectar a um provedor de Configuration Manager usando o WMI
Classe WMI do servidor SMS_BaselineAssignment
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