Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In Configuration Manager eliminare un passaggio (un'azione o un gruppo) da un gruppo di sequenze di attività di distribuzione del sistema operativo eliminando il passaggio dall'elenco dei passaggi della sequenza di attività del gruppo.
Per rimuovere un passaggio da un gruppo
Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.
Ottenere l'oggetto SMS_TaskSequence_Group a cui si vuole aggiungere il passaggio. Per altre informazioni, vedere Come creare un gruppo di sequenze di attività di distribuzione del sistema operativo.
Rimuovere l'azione dalla proprietà della matrice SMS_TaskSequence_Group.Steps.
Esempio
Il metodo di esempio seguente rimuove un'azione da un gruppo di sequenze di attività.
Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice Configuration Manager.
Sub RemoveActionFromGroup(taskSequenceGroup, actionName)
Dim i
If taskSequenceGroup.SystemProperties_("__CLASS")<>"SMS_TaskSequence_Group" Then
wscript.echo "Not a group"
return
End If
Dim newArray
Dim actionStep
newArray = Array(taskSequenceGroup.Steps)
ReDim newArray(UBound(taskSequenceGroup.Steps))
i=0
for each actionStep in taskSequenceGroup.Steps
If actionStep.Name = actionName and _
actionStep.SystemProperties_("__SUPERCLASS") = "SMS_TaskSequence_Action" Then
ReDim preserve newArray(UBound(newArray)-1) ' shrink the Array
else
wscript.echo actionStep.Name
Set newArray(i)=actionStep ' copy it
i=i+1
End If
Next
taskSequenceGroup.Steps=newArray
End Sub
public void RemoveActionFromGroup(
IResultObject taskSequenceGroup,
string actionName)
{
try
{
if (taskSequenceGroup["__CLASS"].StringValue != "SMS_TaskSequence_Group")
{
throw new System.InvalidOperationException("Not a group");
}
List<IResultObject> groupSteps = taskSequenceGroup.GetArrayItems("Steps");
IResultObject actionFound = null;
foreach (IResultObject actionStep in groupSteps)
{
if (actionStep["Name"].StringValue == actionName && actionStep["__SUPERCLASS"].StringValue == "SMS_TaskSequence_Action")
{
actionFound = actionStep;
break;
}
}
groupSteps.Remove(actionFound);
taskSequenceGroup.SetArrayItems("Steps", groupSteps);
}
catch (SmsException e)
{
Console.WriteLine("Failed to remove action: " + e.Message);
throw;
}
}
Il metodo di esempio include i parametri seguenti:
Parametro | Tipo | Descrizione |
---|---|---|
taskSequenceGroup |
- Gestito: IResultObject - VBScript: SWbemObject |
Gruppo della sequenza di attività contenente l'azione da eliminare. |
actionName |
-Gestito: String - VBScript: String |
Nome dell'azione da eliminare. Questa operazione può essere ottenuta dalla proprietà SMS_TaskSequenceAction.Name . |
Compilazione del codice
Questo esempio C# richiede:
Spazi dei nomi
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 operativoCome connettersi a un provider SMS in Configuration Manager usando codice gestitoCome connettersi a un provider SMS in Configuration Manager tramite WMICome spostare un passaggio in un gruppodi sequenze di attività di distribuzione del sistema operativo diversoCome creare una sequenza di attività gruppo di attività di distribuzione del sistema operativoPanoramica della sequenza di attività