Cómo crear un programa

En el ejemplo siguiente se muestra cómo crear un programa, en Configuration Manager, utilizando la clase y las propiedades de SMS_Program clase.

Importante

Cualquier programa anunciado no se ejecutará cuando las ventanas de mantenimiento definidas en el equipo cliente se establezcan por un período inferior al valor de tiempo de ejecución máximo permitido de ese programa. Para obtener más información, consulte Escenario de ejecución de programa con ventanas de mantenimiento en la documentación de Configuration Manager.

Para crear un programa:

  1. Configure una conexión al proveedor de SMS.

  2. Cree el nuevo objeto de programa mediante la SMS_Program clase.

  3. Rellene las nuevas propiedades del programa.

    Sugerencia

    Cuando se crea un programa para una secuencia de tareas o un paquete de aplicaciones virtuales, las propiedades SMS_Program deben establecerse en valores específicos. En las tablas siguientes se describe para qué deben configurarse esas opciones.

    Secuencia de tareas

    Nombre de la propiedad Valor de propiedad
    Nombre del programa *

    Paquete de aplicaciones virtuales

    Nombre de la propiedad Valor de propiedad
    CommandLine PkgGUID={E742FFD6-D539-42CC-9827-73535FC81E06}:VersionGUID={19366289-8C55-44E2-A5EC-7B385EFB4C30}

    Nota: Los valores GUID se toman del archivo de manifiesto XML de la aplicación virtual.
    Nombre del programa [Aplicación virtual]
  4. Guarde el nuevo programa y las propiedades.

Ejemplo

El siguiente método de ejemplo crea un nuevo programa y rellena sus propiedades para su uso en la distribución de software.

Para obtener información sobre cómo llamar al código de ejemplo, consulte Llamar a fragmentos de código de 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;
    }
}

El método de ejemplo tiene los siguientes parámetros:

Parámetro Tipo Descripción
connection

swebemServices
- Administrado: WqlConnectionManager
- VBScript: SWbemServices
Una conexión válida con el proveedor de SMS.
existingPackageID - Administrado: String
- VBScript: String
Nombre del paquete asociado al programa.
newProgramName - Administrado: String
- VBScript: String
El nombre del nuevo programa.
newProgramComment - Administrado: String
- VBScript: String
Comentario que describe el programa en la consola de Configuration Manager.
newProgramCommandLine - Administrado: String
- VBScript: String
Línea de comandos que se ejecuta cuando se inicia el programa.
newMaxRunTime - Administrado: Integer
- VBScript: Integer
La duración aproximada, en minutos, de la ejecución del programa en el equipo cliente. Este parámetro puede tener un valor máximo de 720 minutos o 12 horas.

Compilar el código

El ejemplo de C# requiere:

Espacios de nombres

Sistema

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Ensamblado

adminui.wqlqueryengine

Microsoft.ConfigurationManagement.ManagementProvider

mscorlib

Programación sólida

Para obtener más información acerca del control de errores, consulte Acerca de los errores de Configuration Manager.

Consulta también

Introducción a la distribución de software