Come creare un programma

L'esempio seguente mostra come creare un programma in Configuration Manager usando le SMS_Program proprietà class e class.

Importante

Qualsiasi programma annunciato non verrà eseguito quando le finestre di manutenzione definite nel computer client sono impostate per un periodo inferiore all'impostazione del tempo di esecuzione massimo consentito del programma. Per altre informazioni, vedere Scenario di esecuzione del programma usando finestre di manutenzione nella documentazione di Configuration Manager.

Per creare un programma

  1. Configurare una connessione al provider SMS.

  2. Create il nuovo oggetto programma utilizzando la SMS_Program classe.

  3. Popolare le nuove proprietà del programma.

    Consiglio

    Quando si crea un programma per una sequenza di attività o un pacchetto di applicazioni virtuali, le proprietà SMS_Program devono essere impostate su valori specifici. Le tabelle seguenti descrivono le impostazioni su cui devono essere configurate.

    Sequenza di attività

    Nome proprietà Valore proprietà
    ProgramName *

    Pacchetto di applicazioni virtuali

    Nome proprietà Valore proprietà
    Riga di comando PkgGUID={E742FFD6-D539-42CC-9827-73535FC81E06}:VersionGUID={19366289-8C55-44E2-A5EC-7B385EFB4C30}

    Nota: I valori GUID vengono acquisiti dal file manifesto XML dell'applicazione virtuale.
    ProgramName [Applicazione virtuale]
  4. Salvare il nuovo programma e le proprietà.

Esempio

Il metodo di esempio seguente crea un nuovo programma e ne popola le proprietà per l'utilizzo nella distribuzione software.

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


Sub CreateProgram(connection, existingPackageID, newProgramName, newProgramComment, newProgramCommandLine, newMaxRunTime)

    ' Create the new program object.    Dim newProgram
    Set newProgram = connection.Get("SMS_Program").SpawnInstance_

    ' Populate the program properties.
    newProgram.PackageID = existingPackageID
    newProgram.ProgramName = newProgramName
    newProgram.Comment = newProgramComment
    newProgram.CommandLine = newProgramCommandLine
    newProgram.Duration = newMaxRunTime

    ' Save the new program and properties.
    newProgram.Put_

    ' Output new program name.
    wscript.echo "Created program: " & newProgramName

End Sub
public void CreateProgram(WqlConnectionManager connection,
                          string existingPackageID,
                          string newProgramName,
                          string newProgramComment,
                          string newProgramCommandLine,
                          int newMaxRunTime)
{
    try
    {
        // Create an instance of SMS_Program.
        IResultObject newProgram = connection.CreateInstance("SMS_Program");

        // Populate basic program values.
        newProgram["PackageID"].StringValue = existingPackageID;
        newProgram["ProgramName"].StringValue = newProgramName;
        newProgram["Comment"].StringValue = newProgramComment;
        newProgram["CommandLine"].StringValue = newProgramCommandLine;
        newProgram["Duration"].IntegerValue = newMaxRunTime;

        // Save the new program instance and values.
        newProgram.Put();

        Console.WriteLine("Created program: " + newProgramName);
    }
    catch (SmsException ex)
    {
        Console.WriteLine("Failed to create program. Error: " + ex.Message);
        throw;
    }
}

Il metodo di esempio include i parametri seguenti:

Parametro Tipo Descrizione
connection

swebemServices
- Gestito: WqlConnectionManager
- VBScript: SWbemServices
Una connessione valida al provider SMS.
existingPackageID - Gestito: String
- VBScript: String
Nome del pacchetto associato al programma.
newProgramName - Gestito: String
- VBScript: String
Nome del nuovo programma.
newProgramComment - Gestito: String
- VBScript: String
Commento che descrive il programma nella console di Configuration Manager.
newProgramCommandLine - Gestito: String
- VBScript: String
Riga di comando che viene eseguita all'avvio del programma.
newMaxRunTime - Gestito: Integer
- VBScript: Integer
Durata approssimativa, in minuti, dell'esecuzione del programma nel computer client. Questo parametro può avere un valore massimo di 720 minuti o 12 ore.

Compilazione del codice

L'esempio di C# richiede:

Spazi dei nomi

Sistema

Microsoft.ConfigurationManagementManagementProvider

Microsoft.ConfigurationManagementManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

Microsoft.ConfigurationManagement.ManagementProvider

mscorlib

Programmazione efficiente

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

Vedere anche

Panoramica sulla distribuzione dei software