Come creare una sequenza di attività di distribuzione del sistema operativo
È possibile creare una sequenza di attività di distribuzione del sistema operativo Configuration Manager creando un'istanza della classe SMS_TaskSequence.
Una sequenza di attività contiene uno o più passaggi eseguiti in sequenza nel computer client. Per altre informazioni, vedere Modello a oggetti della sequenza di attività di distribuzione del sistema operativo.
La sequenza di attività viene quindi compressa in un SMS_TaskSequencePackage e annunciata al computer client.
Per creare una sequenza di attività
Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.
Creare un oggetto sequenza
SMS_TaskSequence
di attività.Aggiungere azioni e, se necessario, aggiungere gruppi all'azione. Per altre informazioni, vedere Come aggiungere un'azione della sequenza di attività di distribuzione del sistema operativo.
Associare la sequenza di attività a un pacchetto della sequenza di attività. Per altre informazioni, vedere Come creare un pacchetto della sequenza di attività di distribuzione del sistema operativo.
Annunciare la sequenza di attività al computer client. Per altre informazioni, vedere Come creare un annuncio pubblicitario.
Esempio
Il metodo di esempio seguente crea una sequenza di attività che installa un programma software. L'esempio crea anche un pacchetto della sequenza di attività chiamando l'esempio definito in Come creare un pacchetto della sequenza di attività di distribuzione del sistema operativo.
Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice Configuration Manager.
Sub CreateInstallSoftwareTaskSequence(connection,name, description, packageID, programName)
' Create the task sequence.
set taskSequence = connection.Get("SMS_TaskSequence").SpawnInstance_
' Create the action.
set action = connection.Get("SMS_TaskSequence_InstallSoftwareAction").SpawnInstance_
action.ProgramName=programName
action.PackageID=packageID
action.Name=name
action.Enabled=true
action.ContinueOnError=false
' Create an array to hold the action.
actionSteps= array(action)
' Add the array to the task sequence.
taskSequence.Steps=actionSteps
wscript.echo taskSequence.Steps(0).Name
call CreateTaskSequencePackage (connection, taskSequence)
End Sub
public void CreateInstallSoftwareTaskSequence(
WqlConnectionManager connection,
string name,
string packageId,
string programName)
{
try
{
// Create the task sequence.
IResultObject taskSequence = connection.CreateInstance("SMS_TaskSequence");
IResultObject ro = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_InstallSoftwareAction");
ro["ProgramName"].StringValue = programName;
ro["packageId"].StringValue = packageId;
ro["Name"].StringValue = name;
ro["Enabled"].BooleanValue = true;
ro["ContinueOnError"].BooleanValue = false;
// Add the step to the task sequence.
List<IResultObject> array = taskSequence.GetArrayItems("Steps");
array.Add(ro);
taskSequence.SetArrayItems("Steps", array);
// Create the task sequence package.
this.CreateTaskSequencePackage(connection, taskSequence);
}
catch (SmsException e)
{
Console.WriteLine("Failed to create Task Sequence: " + e.Message);
throw;
}
}
Il metodo di esempio include i parametri seguenti:
Parametro | Tipo | Descrizione |
---|---|---|
Connection |
-Gestito: WqlConnectionManager - VBScript: SWbemServices |
Connessione valida al provider SMS. |
name |
-Gestito: String -Vbscript: String |
Nome del passaggio della sequenza di attività. |
description |
-Vbscript: String |
Descrizione del passaggio della sequenza di attività. |
packageID |
-Gestito: String -Vbscript: String |
Identificatore del pacchetto contenente il software da installare. Ottenuto da SMS_Package.PackageID . |
programName |
-Gestito: String -Vbscript: String |
Nome del programma da installare. Ottenuto da SMS_Program.ProgramName . |
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 connettersi a un provider SMS in Configuration Manager tramite codice gestito
Come connettersi a un provider SMS in Configuration Manager tramite WMI
Panoramica della sequenza di attivitàCome creare un pacchetto della sequenza di attività di distribuzione del sistema operativo