Share via


Een programma maken

In het volgende voorbeeld ziet u hoe u in Configuration Manager een programma maakt met behulp van de SMS_Program klasse- en klasse-eigenschappen.

Belangrijk

Een geadverteerd programma kan niet worden uitgevoerd wanneer de onderhoudsvensters die zijn gedefinieerd op de clientcomputer zijn ingesteld voor een periode die korter is dan de instelling Maximaal toegestane uitvoeringstijd van dat programma. Zie Scenario uitvoeren met onderhoudsvensters in de documentatie voor Configuration Manager voor meer informatie.

Een programma maken

  1. Een verbinding met de SMS-provider instellen.

  2. Maak het nieuwe programmaobject met behulp van de SMS_Program klasse.

  3. Vul de eigenschappen van het nieuwe programma in.

    Tip

    Wanneer u een programma voor een takenreeks of een virtueel toepassingspakket maakt, moeten de eigenschappen van de SMS_Program worden ingesteld op specifieke waarden. In de volgende tabellen wordt beschreven waarvoor deze instellingen moeten worden geconfigureerd.

    Takenreeks

    Eigenschapsnaam Eigenschapswaarde
    ProgramName *

    Virtueel toepassingspakket

    Eigenschapsnaam Eigenschapswaarde
    Commandline PkgGUID={E742FFD6-D539-42CC-9827-73535FC81E06}:VersionGUID={19366289-8C55-44E2-A5EC-7B385EFB4C30}

    Opmerking: De GUID-waarden worden opgehaald uit het XML-manifestbestand van de virtuele toepassing.
    ProgramName [Virtuele toepassing]
  4. Sla het nieuwe programma en de nieuwe eigenschappen op.

Voorbeeld

Met de volgende voorbeeldmethode maakt u een nieuw programma en vult u de eigenschappen ervan in voor gebruik in softwaredistributie.

Zie Aanroepen Configuration Manager codefragmenten voor meer informatie over het aanroepen van de voorbeeldcode.


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

De voorbeeldmethode heeft de volgende parameters:

Parameter Type Beschrijving
connection

swebemServices
-Beheerd: WqlConnectionManager
- VBScript: SWbemServices
Een geldige verbinding met de SMS-provider.
existingPackageID -Beheerd: String
-Vbscript: String
De naam van het pakket dat is gekoppeld aan het programma.
newProgramName -Beheerd: String
-Vbscript: String
De naam voor het nieuwe programma.
newProgramComment -Beheerd: String
-Vbscript: String
Opmerking waarin het programma in de Configuration Manager-console wordt beschreven.
newProgramCommandLine -Beheerd: String
-Vbscript: String
De opdrachtregel die wordt uitgevoerd wanneer het programma wordt gestart.
newMaxRunTime -Beheerd: Integer
-Vbscript: Integer
De geschatte duur, in minuten, van de uitvoering van het programma op de clientcomputer. Deze parameter kan een maximale waarde van 720 minuten of 12 uur hebben.

De code compileren

Voor het C#-voorbeeld is het volgende vereist:

Naamruimten

Systeem

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Vergadering

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

mscorlib

Robuust programmeren

Zie Over Configuration Manager fouten voor meer informatie over foutafhandeling.

Zie ook

Overzicht van softwaredistributie