Come spostare un passaggio in un gruppo di sequenze di attività di distribuzione del sistema operativo diverso

È possibile spostare un passaggio (un'azione o un gruppo) da un gruppo di sequenze di attività di distribuzione del sistema operativo a un altro, in Configuration Manager, aggiungendo il passaggio al gruppo di destinazione e quindi eliminando il passaggio dal gruppo di origine.

Per spostare un passaggio da un gruppo a un altro

  1. Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.

  2. Ottenere gli oggetti SMS_TaskSequenceGroup di origine e di destinazione. Copiare un passaggio a cui si vuole aggiungere il passaggio. Per altre informazioni, vedere Come creare un gruppo di sequenze di attività di distribuzione del sistema operativo.

  3. Aggiungere il passaggio al gruppo di destinazione. Per altre informazioni, vedere Come aggiungere un passaggio a un gruppo di distribuzione del sistema operativo.

  4. Riordinare il passaggio all'interno della proprietà della matrice del gruppo di destinazione in base alle esigenze. Per altre informazioni, vedere Come riordino una sequenza di attività di distribuzione del sistema operativo

  5. Eliminare il passaggio dal gruppo di origine. Per altre informazioni, vedere Come rimuovere un passaggio da un gruppo di distribuzione del sistema operativo.

Esempio

Il metodo di esempio seguente sposta un passaggio da un gruppo di sequenze di attività a un altro.

Per eseguire questo esempio, sarà necessario il frammento di codice in How to Remove a Step From an Operating System Deployment Group (Come rimuovere un passaggio da un gruppo di distribuzione del sistema operativo ).

Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice Configuration Manager.

Sub MoveActionToGroup( taskSequenceStep, sourceGroup,targetGroup)  

        Dim steps  
        Dim groupSteps   

        Steps = Array(targetGroup.Steps)  

        If IsNull(targetGroup.Steps) Then  
            groupSteps = Array(taskSequenceStep)  
            targetGroup.Steps = groupSteps  
        Else      
            ReDim steps (UBound (targetGroup.Steps)+1)    
            targetGroup.Steps(UBound(steps))=taskSequenceStep  
        End If      

        Call RemoveActionFromGroup(sourceGroup,taskSequenceStep.Name)  

End Sub  
public void MoveActionToGroup(  
    IResultObject taskSequenceStep,   
    IResultObject sourceGroup,   
    IResultObject targetGroup)  
{  
    try  
    {  
        // Add the step to the target group.   
        // Note. You can use MoveTaskSequenceStepUp and MoveTaskSequenceStepDown  
        // to place the step in the target group.  

        List<IResultObject> groupSteps = targetGroup.GetArrayItems("Steps");  
        groupSteps.Add(taskSequenceStep);  
        targetGroup.SetArrayItems("Steps", groupSteps);  

        // Remove action from the source group.  
        this.RemoveActionFromGroup(sourceGroup, taskSequenceStep["Name"].StringValue);  
    }  
    catch (SmsException e)  
    {  
        Console.WriteLine("Failed to create Task Sequence: " + e.Message);  
        throw;  
    }  
}  

Il metodo di esempio include i parametri seguenti:

Parametro Tipo Descrizione
taskSequenceStep -Gestito: IResultObject
- VBScript: SWbemObject
Passaggio valido della sequenza di attività (gruppo o azione) (SMS_TaskSequence_Step).
sourceGroup -Gestito: IResultObject
-Vbscript: SWbemObject
SMS_TaskSequenceGroup Gruppo da cui viene copiato il passaggio.
targetGroup -Gestito: IResultObject
-Vbscript: SWbemObject
SMS_TaskSequenceGroup Gruppo in cui viene copiato il passaggio.

Compilazione del codice

Questo esempio C# richiede:

Namespaces

Sistema

System.collections.generic

System.Text

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Programmazione efficiente

Per altre informazioni sulla gestione degli errori, vedere Informazioni sugli errori di Configuration Manager.

Sicurezza di .NET Framework

Per altre informazioni sulla protezione delle applicazioni Configuration Manager, vedere Configuration Manager'amministrazione basata sui ruoli.

Vedere anche

Panoramica degli oggettiCome aggiungere un passaggio a un gruppo di distribuzione del sistema operativo
Come connettersi a un provider SMS in Configuration Manager tramite codice gestito
Come connettersi a un provider SMS in Configuration Manager tramite WMI
Come creare un gruppo di attività di distribuzione del sistema operativo
Come rimuovere un passaggio da un gruppo di distribuzione del sistema operativo
Panoramica sulla sequenza delle attività