Como criar um programa

O exemplo a seguir mostra como criar um programa, no Configuration Manager, usando as SMS_Program propriedades class e class.

Importante

Qualquer programa anunciado falhará em ser executado quando as janelas de manutenção definidas no computador cliente forem definidas por um período menor que a configuração de tempo de execução máximo permitido desse programa. Para obter mais informações, consulte Cenário de execução do programa usando janelas de manutenção na documentação do Configuration Manager.

Para criar um programa

  1. Configure uma conexão com o provedor de SMS.

  2. Crie o novo objeto de programa usando a SMS_Program classe.

  3. Preencha as novas propriedades do programa.

    Dica

    Quando você cria um programa para uma Sequência de Tarefas ou um Pacote de Aplicativos Virtuais, as propriedades SMS_Program devem ser definidas com valores específicos. As tabelas a seguir descrevem para que essas configurações devem ser definidas.

    Sequência de tarefas

    Nome da propriedade Valor de propriedade
    ProgramName *

    Pacote de Aplicativos Virtuais

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

    Observação: Os valores GUID são obtidos do arquivo de manifesto XML do aplicativo virtual.
    ProgramName [Aplicativo virtual]
  4. Salve o novo programa e propriedades.

Exemplo

O método de exemplo a seguir cria um novo programa e preenche suas propriedades para uso na distribuição de software.

Para obter informações sobre como chamar o código de exemplo, consulte Chamando trechos de código do 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;
    }
}

O método de exemplo tem os seguintes parâmetros:

Parâmetro Tipo Descrição
connection

swebemServices
- Gerenciado: WqlConnectionManager
- VBScript: SWbemServices
Uma conexão válida com o provedor de SMS.
existingPackageID - Gerenciado: String
- VBScript: String
O nome do pacote associado ao programa.
newProgramName - Gerenciado: String
- VBScript: String
O nome do novo programa.
newProgramComment - Gerenciado: String
- VBScript: String
Comentário que descreve o programa no console do Configuration Manager.
newProgramCommandLine - Gerenciado: String
- VBScript: String
A linha de comando executada quando o programa é iniciado.
newMaxRunTime - Gerenciado: Integer
- VBScript: Integer
A duração aproximada, em minutos, da execução do programa no computador cliente. Esse parâmetro pode ter um valor máximo de 720 minutos ou 12 horas.

Compilando o código

O exemplo do C# requer:

Namespaces

Sistema

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

Microsoft.ConfigurationManagement.ManagementProvider

mscorlib

Programação robusta

Para obter mais informações sobre o tratamento de erros, consulte Sobre erros do Configuration Manager.

Confira também

Visão geral da distribuição de software