Como criar um programa
O exemplo a seguir mostra como criar um programa, em Configuration Manager, usando as propriedades de SMS_Program
classe e classe.
Importante
Qualquer programa anunciado não será executado quando as janelas de manutenção definidas no computador cliente forem definidas para um período menor do que a configuração máxima de tempo de execução permitida do programa. Para obter mais informações, consulte Cenário de Execução de Programa usando o Windows de Manutenção na documentação Configuration Manager.
Para criar um programa
Configure uma conexão com o Provedor de SMS.
Crie o novo objeto de programa usando a
SMS_Program
classe.Preencha as novas propriedades do programa.
Dica
Quando você cria um programa para uma Sequência de Tarefas ou um Pacote de Aplicativo Virtual, as propriedades SMS_Program devem ser definidas como valores específicos. As tabelas a seguir descrevem para que essas configurações devem ser configuradas.
Sequência de Tarefas
Nome da propriedade Valor de propriedade ProgramName * Pacote de Aplicativo Virtual
Nome da propriedade Valor de propriedade CommandLine PkgGUID={E742FFD6-D539-42CC-9827-73535FC81E06}:VersionGUID={19366289-8C55-44E2-A5EC-7B385EFB4C30}
Nota: Os valores GUID são retirados do arquivo de manifesto XML do aplicativo virtual.ProgramName [Aplicativo virtual] Salve o novo programa e as 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 Configuration Manager Snippets de Código.
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 Configuration Manager. |
newProgramCommandLine |
-Gerenciado: String -Vbscript: String |
A linha de comando que é 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 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 de Configuration Manager.