Guide pratique pour créer un programme

L’exemple suivant montre comment créer un programme, dans Configuration Manager, à l’aide des propriétés de classe SMS_Program et de classe.

Importante

Tout programme publié ne peut pas s’exécuter lorsque les fenêtres de maintenance définies sur l’ordinateur client sont définies pour une période inférieure au paramètre Durée d’exécution maximale autorisée de ce programme. Pour plus d’informations, consultez Scénario d’exécution de programme à l’aide de Windows de maintenance dans la documentation Configuration Manager.

Pour créer un nouveau programme, procédez comme suit :

  1. Configurez une connexion au fournisseur SMS.

  2. Créez le nouvel objet de programme à l’aide de la SMS_Program classe .

  3. Renseignez les nouvelles propriétés du programme.

    Conseil

    Lorsque vous créez un programme pour une séquence de tâches ou un package d’application virtuelle, les propriétés SMS_Program doivent être définies sur des valeurs spécifiques. Les tableaux suivants décrivent à quoi ces paramètres doivent être configurés.

    Séquence de tâches

    Nom de la propriété Valeur de la propriété
    ProgramName *

    Package d’application virtuelle

    Nom de la propriété Valeur de la propriété
    CommandLine PkgGUID={E742FFD6-D539-42CC-9827-73535FC81E06}:VersionGUID={19366289-8C55-44E2-A5EC-7B385EFB4C30}

    Note: Les valeurs GUID proviennent du fichier manifeste XML de l’application virtuelle.
    ProgramName [Application virtuelle]
  4. Enregistrez le nouveau programme et les nouvelles propriétés.

Exemple

L’exemple de méthode suivant crée un programme et remplit ses propriétés pour une utilisation dans la distribution de logiciels.

Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code 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;  
    }  
}  

L’exemple de méthode a les paramètres suivants :

Paramètre Type Description
connection

swebemServices
-Géré: WqlConnectionManager
- VBScript : SWbemServices
Connexion valide au fournisseur SMS.
existingPackageID -Géré: String
-Vbscript: String
Nom du package associé au programme.
newProgramName -Géré: String
-Vbscript: String
Nom du nouveau programme.
newProgramComment -Géré: String
-Vbscript: String
Commentaire décrivant le programme dans la console Configuration Manager.
newProgramCommandLine -Géré: String
-Vbscript: String
Ligne de commande qui s’exécute lorsque le programme est lancé.
newMaxRunTime -Géré: Integer
-Vbscript: Integer
Durée approximative, en minutes, de l’exécution du programme sur l’ordinateur client. Ce paramètre peut avoir une valeur maximale de 720 minutes ou 12 heures.

Compilation du code

L’exemple C# nécessite :

Espaces de noms

Système

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

mscorlib

Programmation robuste

Pour plus d’informations sur la gestion des erreurs, consultez À propos des erreurs Configuration Manager.

Voir aussi

Vue d’ensemble de la distribution de logiciels