次の方法で共有


クラス SMS_PDF_Packageの LoadPDF メソッド

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

次の構文は、マネージド オブジェクト形式 (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

修飾子: [in]

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

PDFID
データ型: UInt32

修飾子: [out]

割り当てられたパッケージ定義ファイル ID。

RequiredIconNames
データ型: String 配列

修飾子: [out]

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

戻り値

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

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) サポートされているClients 情報は指定されていません。
WARN_BAD_SUPPCLINFO (8) 指定された SupportedClients 情報が無効です。
WARN_VER1PDF (9) バージョン 1.0 ファイルが使用されます。
WARN_REMPRONOUKEY(10) 削除プログラムは設定されていますが、アンインストール キーは指定されません。

注釈

アプリケーションが、既存のパッケージ定義ファイルと同じ Name、、 PublisherVersionおよび 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 クラス