Come enumerare le sequenze di attività di distribuzione del sistema operativo disponibili

È possibile enumerare le sequenze di attività di distribuzione del sistema operativo disponibili, in Configuration Manager, eseguendo una query sui pacchetti della sequenza di attività disponibili. Configuration Manager non gestisce le istanze della classe SMS_TaskSequence per le sequenze di attività, ma esiste un'istanza della classe SMS_TaskSequencePackage per ogni sequenza di attività.

Nota

Diverse proprietà sono lazy ed è necessario ottenere l'istanza dell'oggetto prima di poter accedere alle proprietà.

È anche possibile accedere ai singoli pacchetti della sequenza di attività usando la proprietà della chiave PackageID . Per un esempio, vedere Come leggere un oggetto Configuration Manager usando codice gestito. Dopo aver creato il pacchetto della sequenza di attività, è necessario creare un oggetto SMS_TaskSequence per la sequenza di attività prima di poterla modificare. Per altre informazioni, vedere Come leggere una sequenza di attività da un pacchetto della sequenza di attività.

Per enumerare i pacchetti della sequenza di attività disponibili

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

  2. Eseguire una query sul provider SMS per le istanze disponibili di SMS_TaskSequencePackage.

  3. Visualizzare le proprietà necessarie per ogni pacchetto della sequenza di attività restituito dalla query.

Esempio

Il metodo di esempio seguente esegue una query sul provider SMS per l'istanza disponibile di SMS_TaskSequencePackage. Per recuperare le proprietà lazy, l'esempio ottiene l'intero oggetto dal provider SMS.

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

Sub EnumerateTaskSequencePackages(connection)  

    Set taskSequencePackages= connection.ExecQuery("Select * from SMS_TaskSequencePackage")  

    For Each package in taskSequencePackages  
        WScript.Echo package.Name  
        WScript.Echo package.Sequence  
    Next  
End Sub  
public void EnumerateTaskSequencePackages(  
    WqlConnectionManager connection)  
{  
    IResultObject taskSequencePackages = connection.QueryProcessor.ExecuteQuery("select * from SMS_TaskSequencePackage");  

    foreach (IResultObject ro in taskSequencePackages)  
    {  
        ro.Get();  

        // Get the lazy properties - Sequence property contains the Task sequence XML.  
        Console.WriteLine(ro["Name"].StringValue);  
        Console.WriteLine(ro["Sequence"].StringValue);  

        Console.WriteLine();  
    }  
}  

Il metodo di esempio include i parametri seguenti:

Parametro Tipo Descrizione
connection -Gestito: WqlConnectionManager
- VBScript: SWbemServices
Connessione valida al provider SMS.

Compilazione del codice

L'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
Come creare un pacchetto della sequenza di attività di distribuzione del sistema operativo
Come leggere una sequenza di attività da un pacchetto della sequenza di attività
Panoramica sulla sequenza delle attività