Freigeben über


Erstellen eines Programms

Das folgende Beispiel zeigt, wie Sie ein Programm in Configuration Manager mithilfe der SMS_Program Klassen- und Klasseneigenschaften erstellen.

Wichtig

Jedes angekündigte Programm kann nicht ausgeführt werden, wenn die auf dem Clientcomputer definierten Wartungsfenster für einen Zeitraum festgelegt sind, der kleiner als die Einstellung Maximal zulässige Laufzeit dieses Programms ist. Weitere Informationen finden Sie unter Programmausführungsszenario mit Wartungsfenstern in der Configuration Manager-Dokumentation.

So erstellen Sie ein Programm

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein.

  2. Erstellen Sie das neue Programmobjekt mithilfe der SMS_Program -Klasse.

  3. Füllen Sie die neuen Programmeigenschaften auf.

    Tipp

    Wenn Sie ein Programm für eine Tasksequenz oder ein virtuelles Anwendungspaket erstellen, müssen die SMS_Program Eigenschaften auf bestimmte Werte festgelegt werden. In den folgenden Tabellen wird erläutert, wofür diese Einstellungen konfiguriert werden sollten.

    Tasksequenz

    Eigenschaftenname Eigenschaftswert
    ProgramName *

    Virtuelles Anwendungspaket

    Eigenschaftenname Eigenschaftswert
    CommandLine PkgGUID={E742FFD6-D539-42CC-9827-73535FC81E06}:VersionGUID={19366289-8C55-44E2-A5EC-7B385EFB4C30}

    Hinweis: Die GUID-Werte stammen aus der XML-Manifestdatei der virtuellen Anwendung.
    ProgramName [Virtuelle Anwendung]
  4. Speichern Sie das neue Programm und die Eigenschaften.

Beispiel

Die folgende Beispielmethode erstellt ein neues Programm und füllt seine Eigenschaften für die Verwendung in der Softwareverteilung auf.

Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.


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;  
    }  
}  

Die Beispielmethode verfügt über die folgenden Parameter:

Parameter Typ Beschreibung
connection

swebemServices
-Verwalteten: WqlConnectionManager
– VBScript: SWbemServices
Eine gültige Verbindung mit dem SMS-Anbieter.
existingPackageID -Verwalteten: String
-Vbscript: String
Der Name des Pakets, das dem Programm zugeordnet ist.
newProgramName -Verwalteten: String
-Vbscript: String
Der Name für das neue Programm.
newProgramComment -Verwalteten: String
-Vbscript: String
Kommentar, der das Programm in der Configuration Manager-Konsole beschreibt.
newProgramCommandLine -Verwalteten: String
-Vbscript: String
Die Befehlszeile, die beim Starten des Programms ausgeführt wird.
newMaxRunTime -Verwalteten: Integer
-Vbscript: Integer
Die ungefähre Dauer der Programmausführung auf dem Clientcomputer in Minuten. Dieser Parameter kann einen maximalen Wert von 720 Minuten oder 12 Stunden haben.

Kompilieren des Codes

Für das C#-Beispiel ist Folgendes erforderlich:

Namespaces

System

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Mscorlib

Robuste Programmierung

Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager Fehlern.

Siehe auch

Übersicht über die Softwareverteilung