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) | 削除プログラムは設定されていますが、アンインストール キーは与えられません。 |
注釈
アプリケーションが既存のパッケージ定義ファイルと同じ Name、 Publisher、 Version、および 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 サーバー開発の要件」を参照してください。