프로그램을 만드는 방법

다음 예제에서는 SMS_Program 클래스 및 클래스 속성을 사용 하 여 Configuration Manager에서 프로그램을 만드는 방법을 보여 줍니다.

중요

클라이언트 컴퓨터에 정의 된 유지 관리 기간이 해당 프로그램의 최대 허용 실행 시간 설정 보다 작은 기간으로 설정 된 경우 보급 된 프로그램이 실행 되지 않습니다. 자세한 내용은 Configuration Manager 설명서에서 유지 관리 기간을 사용 하 여 프로그램 실행 시나리오를 참조 하세요.

프로그램을 만들려면

  1. SMS 공급자에 대한 연결을 설정합니다.

  2. 클래스를 사용 하 여 새 프로그램 개체를 만듭니다 SMS_Program .

  3. 새 프로그램 속성을 채웁니다.

    작업 순서 또는 가상 응용 프로그램 패키지에 대 한 프로그램을 만들 때 SMS_Program 속성을 특정 값으로 설정 해야 합니다. 다음 표에서는 이러한 설정을 구성 해야 하는 내용을 간략하게 설명 합니다.

    작업 순서

    속성 이름 속성 값
    ProgramName *

    가상 애플리케이션 패키지

    속성 이름 속성 값
    명령줄 PkgGUID = {E742FFD6-D539-42CC-9827-73535FC81E06}: VersionGUID = {19366289-8C55-44E2-A5EC-7B385EFB4C30}

    참고: GUID 값은 가상 응용 프로그램의 XML 매니페스트 파일에서 가져옵니다.
    ProgramName [가상 응용 프로그램]
  4. 새 프로그램 및 속성을 저장 합니다.

예제

다음 예제 메서드는 새 프로그램을 만들고 소프트웨어 배포에 사용 하기 위해 해당 속성을 채웁니다.

샘플 코드를 호출하는 방법에 대한 자세한 내용은 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;  
    }  
}  

예제 메서드에는 다음과 같은 매개 변수가 포함되어 있습니다.

매개 변수 Type 설명
connection

swebemServices
- 관리 코드: WqlConnectionManager
- VBScript: SWbemServices
SMS 공급자에 대한 유효한 연결입니다.
existingPackageID - 관리 코드: String
- VBScript: String
프로그램과 연결 된 패키지의 이름입니다.
newProgramName - 관리 코드: String
- VBScript: String
새 프로그램의 이름입니다.
newProgramComment - 관리 코드: String
- VBScript: String
Configuration Manager 콘솔에서 프로그램을 설명 하는 설명입니다.
newProgramCommandLine - 관리 코드: String
- VBScript: String
프로그램이 시작 될 때 실행 되는 명령줄입니다.
newMaxRunTime - 관리 코드: Integer
- VBScript: Integer
클라이언트 컴퓨터에서 프로그램을 실행 하는 대략적인 시간 (분)입니다. 이 매개 변수는 최대 720 분 또는 12 시간 값을 가질 수 있습니다.

코드 컴파일

C# 예제에서는 다음 항목이 필요합니다.

네임스페이스

시스템

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

어셈블리

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

mscorlib

강력한 프로그래밍

오류 처리에 대한 자세한 내용은 Configuration Manager 오류 정보를 참조하세요.

참고 항목

소프트웨어 배포 개요