다음을 통해 공유


패키지를 만드는 방법

다음 예제에서는 클래스 및 클래스 속성을 사용하여 SMS_Package Configuration Manager 패키지를 만드는 방법을 보여줍니다.

패키지를 만들려면

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

  2. 클래스를 사용하여 새 패키지 개체를 만듭니다 SMS_Package .

  3. 새 패키지 속성을 채웁 수 있습니다.

    가상 애플리케이션 패키지를 만들 때 속성을 특정 값으로 설정 SMS_Package 해야 합니다. 클래스의 SMS_VirtualApp 인스턴스는 다음 표에 설명된 속성을 사용하는 클래스의 SMS_Package 인스턴스를 참조해야 합니다.

    가상 애플리케이션 패키지

    속성 이름 속성 값
    PackageType 7
    PkgSourceFlag 2
    PkgSourcePath \\someserver\somesharepath
  4. 패키지를 저장합니다.

예제

다음 예제 메서드는 새 패키지를 만들고 소프트웨어 배포에 사용할 속성을 채웁니다.

샘플 코드 호출에 대한 자세한 내용은 코드 조각 Configuration Manager 호출을 참조하세요.


Sub CreatePackage(connection, newPackageName, newPackageDescription, newPackageSourceFlag, newPackageSourcePath)

    ' Create the new package object.     Dim newPackage
    Set newPackage = connection.Get("SMS_Package").SpawnInstance_

    ' Populate the new package properties.
    newPackage.Name = newPackageName
    newPackage.Description = newPackageDescription
    newPackage.PkgSourceFlag = newPackageSourceFlag
    newPackage.PkgSourcePath = newPackageSourcePath

    ' Save the package.
    newPackage.Put_

    ' Output the new package name.
    wscript.echo "Created package: "  & newPackageDescription

End Sub
public void CreatePackage(WqlConnectionManager connection, string newPackageName, string newPackageDescription, int newPackageSourceFlag, string newPackageSourcePath)
{
    try
    {
        // Create new package object.
        IResultObject newPackage = connection.CreateInstance("SMS_Package");

        // Populate new package properties.
        newPackage["Name"].StringValue = newPackageName;
        newPackage["Description"].StringValue = newPackageDescription;
        newPackage["PkgSourceFlag"].IntegerValue = newPackageSourceFlag;
        newPackage["PkgSourcePath"].StringValue = newPackageSourcePath;

        // Save new package and new package properties.
        newPackage.Put();

        // Output new package name.
        Console.WriteLine("Created package: " + newPackageName);
    }

    catch (SmsException ex)
    {
        Console.WriteLine("Failed to create package. Error: " + ex.Message);
        throw;
    }
}

예제 메서드에는 다음 매개 변수가 있습니다.

매개 변수 형식 설명
connection -관리: WqlConnectionManager
- VBScript: SWbemServices
SMS 공급자에 대한 유효한 연결입니다.
newPackageName -관리: String
- VBScript: String
새 패키지의 이름입니다.
newPackageDescription -관리: String
- VBScript: String
새 패키지에 대한 설명입니다.
newPackageSourceFlag -관리: Integer
- VBScript: Integer
패키지 원본입니다.
newPackageSourcePath -관리: String
- VBScript: String
패키지 원본에 대한 경로입니다.

코드 컴파일

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

네임스페이스

시스템

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

어셈블리

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

mscorlib

강력한 프로그래밍

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

참고 항목

소프트웨어 배포 개요SMS_Package 서버 WMI 클래스PowerShell Cmdlet: New-CMPackage