Så här lägger du till ett steg i en distributionsgrupp för operativsystem
Du lägger till ett steg (en åtgärd eller en grupp) i en aktivitetssekvensgrupp för operativsystemdistribution i Configuration Manager genom att lägga till steget i matrisegenskapenSMS_TaskSequenceGroup.Steps
.
Lägga till ett steg i en aktivitetssekvensgrupp
Konfigurera en anslutning till SMS-providern. Mer information finns i grunderna för SMS-provider.
Hämta det SMS_TaskSequenceGroup objekt som du vill lägga till steget i. Mer information finns i Skapa en aktivitetssekvensgrupp för operativsystemdistribution.
Skapa aktivitetssekvenssteget. Ett exempel på hur du skapar ett åtgärdssteg finns i Så här lägger du till en aktivitetssekvensåtgärd för operativsystemdistribution.
Lägg till steget i matrisegenskapen
SMS_TaskSequenceGroup.Steps
.Ändra ordning på steget i matrisegenskapen efter behov. Mer information finns i Så här ordnar du om en aktivitetssekvens för operativsystemdistribution
Exempel
Följande exempelmetod lägger till en kommandoradsåtgärd i en aktivitetssekvensgrupp.
Information om hur du anropar exempelkoden finns i Anropa Configuration Manager kodfragment.
Sub AddStepToGroup(taskSequenceStep, group)
Dim steps
' If needed, create a new steps array.
If IsNull(group.Steps) Then
steps = Array(taskSequenceStep)
group.Steps=steps
Else
' Resize the existing steps and add step.
steps= Array(group.Steps)
ReDim steps (UBound (group.Steps)+1)
group.Steps(UBound(steps))=taskSequenceStep
End if
End Sub
public void AddStepToGroup(
WqlConnectionManager connection,
IResultObject taskSequence,
string groupName)
{
try
{
// Get the group.
List<IResultObject> steps = taskSequence.GetArrayItems("Steps"); // Array of SMS_TaskSequence_Steps.
foreach (IResultObject ro in steps)
{
if (ro["Name"].StringValue == groupName && ro["__CLASS"].StringValue == "SMS_TaskSequence_Group")
{
IResultObject action = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_RunCommandLineAction");
action["CommandLine"].StringValue = @"C:\donowtingroup.bat";
action["Name"].StringValue = "Action in group " + groupName;
action["Description"].StringValue = "Action in a group";
action["Enabled"].BooleanValue = true;
action["ContinueOnError"].BooleanValue = false;
// Add the step to the task sequence.
List<IResultObject> array = ro.GetArrayItems("Steps");
array.Add(action);
ro.SetArrayItems("Steps", array);
taskSequence.SetArrayItems("Steps", steps);
break;
}
}
}
catch (SmsException e)
{
Console.WriteLine("Failed to create Task Sequence: " + e.Message);
throw;
}
}
Exempelmetoden har följande parametrar:
Parameter | Typ | Beskrivning |
---|---|---|
connection |
-Hanterade: WqlConnectionManager – VBScript: SWbemServices |
En giltig anslutning till SMS-providern. |
taskSequence taskSequenceStep |
-Hanterade: IResultObject – VBScript: SWbemObject |
– En giltig aktivitetssekvens (SMS_TaskSequence) som innehåller gruppen. |
groupName group |
-Hanterade: String -Vbscript: String |
Namnet på den grupp som kommandoradsåtgärden läggs till i. Detta hämtas från egenskapen SMS_TaskSequenceGroup.Name . |
Kompilera koden
Det här C#-exemplet kräver:
Namnområden
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Församlingen
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Robust programmering
Mer information om felhantering finns i Om Configuration Manager fel.
.NET Framework Säkerhet
Mer information om hur du skyddar Configuration Manager program finns i Configuration Manager rollbaserad administration.
Se även
ObjektöversiktSå här ansluter du till en SMS-provider i Configuration Manager med hjälp av hanterad kod
Ansluta till en SMS-provider i Configuration Manager med hjälp av WMI
Flytta ett steg till en annan aktivitetssekvensgrupp för operativsystemdistribution
Så här skapar du en aktivitetssekvensgrupp för operativsystemdistribution
Ta bort ett steg från en distributionsgrupp för operativsystem
Översikt över aktivitetssekvens