クラス SMS_PDF_Package の LoadPDF メソッド

Configuration Manager の LoadPDF Windows Management Instrumentation (WMI) クラスのメソッドは、指定されたパッケージ定義ファイルをパッケージ定義ファイル ストアにインポートします。

次の構文は、マネージ オブジェクト形式 (MOF) コードから簡素化され、メソッドを定義したものです。

構文

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

Qualifiers: [in]

パッケージ定義ファイル自体のテキスト。

PDFID データ型: UInt32

Qualifiers: [out]

割り当て済みのパッケージ定義ファイル ID。

RequiredIconNames データ型: String 配列

Qualifiers: [out]

クラス SMS_PDF_Package メソッドの LoadIconForPDF メソッドを使用して個別に読み込む必要があるパッケージ定義ファイルによって参照されるアイコンの一覧。

戻り値

成功を示す 0、または失敗を示す次のいずれかのビット フィールド警告フラグを示す SInt32 データ型。

Flag 説明
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) 無効な SpecifyDrive 情報が指定されました。
WARN_BAD_ESTDISKSPACE (6) 無効な EstimatedDiskSpace 情報が指定されました。
WARN_NO_SUPPCLINFO (7) SupportedClients 情報が指定されていません。
WARN_BAD_SUPPCLINFO (8) 無効な SupportedClients 情報が指定されました。
WARN_VER1PDF (9) 使用されているバージョン 1.0 ファイル。
WARN_REMPRONOUKEY(10) 削除プログラムは設定されていますが、アンインストール キーは与えられません。

注釈

アプリケーションが既存のパッケージ定義ファイルと同じ NamePublisherVersion、および Language プロパティを持つパッケージ定義ファイルをインポートすると、既存のパッケージ定義ファイル (ファイル アイコンやプログラムを含む) が上書きされます。 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 クラス