다음을 통해 공유


클래스 SMS_PDF_Package LoadPDF 메서드

WMI(Windows Management Instrumentation) 클래스 메서드는 LoadPDF Configuration Manager 지정된 패키지 정의 파일을 패키지 정의 파일 저장소로 가져옵니다.

다음 구문은 MOF(Managed Object Format) 코드에서 간소화되고 메서드를 정의합니다.

구문

SInt32 LoadPDF(
     String PDFFileName,
     String PDFFile,
     UInt32 PDFID,
     String RequiredIconNames[]
);

매개 변수

PDFFileName 데이터 형식: String

한정자: [in,SizeLimit("100")]

패키지 정의 파일의 전체 경로 및 파일 이름입니다. SMS 공급자는 파일을 \Smsinstalldir\Scripts\localeid>\<Pdfstore\<pdfid> 디렉터리에 복사하고 .pdf 파일 이름 확장명을 .sms 파일 이름 확장명으로 바꿉니다.

PDFFile 데이터 형식: String

한정자: [in]

패키지 정의 파일 자체의 텍스트입니다.

PDFID 데이터 형식: UInt32

한정자: [out]

할당된 패키지 정의 파일 ID입니다.

RequiredIconNames 데이터 형식: String 배열

한정자: [out]

클래스 SMS_PDF_Package 메서드의 LoadIconForPDF 메서드를 통해 별도로 로드해야 하는 패키지 정의 파일에서 참조하는 아이콘 목록입니다.

반환 값

SInt32 성공에 대해 0을 나타내는 데이터 형식 또는 실패에 대한 다음 비트 필드 경고 플래그 중 하나입니다.

설명
WARN_BAD_RUN (0) 잘못된 실행 정보가 지정되었습니다.
WARN_BAD_RESTART (1) 잘못된 다시 시작 정보가 지정되었습니다.
WARN_BAD_CANRUNWHEN (2) 잘못된 CanRunWhen 정보가 지정되었습니다.
WARN_BAD_ASSIGNMENT (3) 할당 정보가 잘못되었습니다.
WARN_BAD_DEPENDPROG (4) 잘못된 DependentProgram 정보가 지정되었습니다.
WARN_BAD_SPECIFYDRIVE (5) 지정한 SpecifiDrive 정보가 잘못되었습니다.
WARN_BAD_ESTDISKSPACE (6) 잘못된 EstimatedDiskSpace 정보가 지정되었습니다.
WARN_NO_SUPPCLINFO (7) SupportedClients 정보가 지정되지 않았습니다.
WARN_BAD_SUPPCLINFO (8) 잘못된 SupportedClients 정보가 지정되었습니다.
WARN_VER1PDF (9) 버전 1.0 파일이 사용되었습니다.
WARN_REMPRONOUKEY(10) 제거 프로그램이 설정되었지만 제거 키가 제공되지 않습니다.

설명

애플리케이션이 기존 패키지 정의 파일과 동일한 Name, , PublisherVersionLanguage 속성이 있는 패키지 정의 파일을 가져오면 파일 아이콘 및 프로그램을 포함하여 기존 패키지 정의 파일을 덮어씁니다. 매개 변수에 PDFID 지정된 값은 유지됩니다.

예제 코드

다음 예제에서는 패키지 정의 파일을 패키지 정의 파일 패키지 저장소에 로드하는 방법을 보여줍니다.

Const ForReading = 1

Dim fs, f                         ' File system object and file object.
Dim clsPDF As SWbemObject         ' SMS_PDF_Package class definition.
Dim ReturnCode As Long            ' Return code value from LoadPDF method.
Dim PDFID As Long                 ' Package definition file identifier generated from LoadPDF.
Dim PDFContent As String          ' Package definition file file content.
Dim ReqIconNames() As Variant     ' Required icon names from LoadPDF.
Dim Icon() As Byte                ' Icon used as input to LoadIconForPDF method.
Dim i, j As Integer
Dim FileSize As Integer           ' Size of the icon file.

Set Services = GetObject("winmgmts:\root\sms\<sitecode>")

' Open the package definition file file and read the content into a string.
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.OpenTextFile(<path\filename>, ForReading)
PDFContent = f.ReadAll
f.Close

' Load the package definition file into the package definition file store. Use the PDFID and ReqIconNames
' Variables in the LoadIconForPDF method.
Set clsPDF = Services.Get("SMS_PDF_Package")
ReturnCode = clsPDF.LoadPDF(<path\filename>, _
                            PDFContent, _
                            PDFID, _
                            ReqIconNames)

' You must load all the icons for the package definition file if the package definition file contains icons.
For i = LBound(ReqIconNames) To UBound(ReqIconNames)
    Open <path> & ReqIconNames(i) For Binary Access Read As #1
    FileSize = LOF(1) - 1
    ReDim Icon(FileSize)
    For j = 0 To FileSize
        Get #1, , Icon(j)
    Next
    Close #1

    clsPDF.LoadIconForPDF PDFID, ReqIconNames(i), Icon
Next

요구 사항

런타임 요구 사항

자세한 내용은 Configuration Manager 서버 런타임 요구 사항을 참조하세요.

개발 요구 사항

자세한 내용은 Configuration Manager 서버 개발 요구 사항을 참조하세요.

참고 항목

SMS_PDF_Package 서버 WMI 클래스