How to Create a Package by Using a Package Definition File Template
The following example shows how to create a package and program by using a package definition file template in Configuration Manager. The package definition file template contains the default values that are used to create SMS_Package
and SMS_Program
objects. The following example uses the SMS_PDF_Package
class and the GetPDFData
method to load the package definition file template information and to create a package and the related programs.
To create a package by using a package definition file template
Set up a connection to the SMS Provider.
Create the new package object by using the
SMS_PDF_Package
class.Populate any additional package properties.
Load the program information and associate each program with the package.
Example
The following example method creates a new package by using a package definition file.
For information about calling the sample code, see Calling Configuration Manager Code Snippets.
Sub SWDCreatePDFPackage(connection, existingPDF_ID, newPackageSourceFlag, newPackageSourcePath)
' The PDF_ID must be passed in.
' The PDF_ID can be identified through the SMS_PDF_Package class.
Dim newPDFPackage
Dim returnCode
Dim newPackage
Dim newPackagePath
Dim packageID
Dim program
Dim arrayOfPrograms
' Package Creation
' ----------------
' Create new SMS_PDF_Package instance.
Set newPDFPackage = connection.Get("SMS_PDF_Package")
' Load the Package Definition File data using the GetPDFData method.
returnCode = newPDFPackage.GetPDFData(existingPDF_ID, newPackage, arrayOfPrograms)
' Assign any additional package properties.
newPackage.PkgSourceFlag = newPackageSourceFlag
newPackage.PkgSourcePath = newPackageSourcePath
' Save the package path and get the Package ID.
Set newPackagePath = newPackage.Put_
packageID = newPackagePath.Keys("PackageID")
' Program Creation
' -----------------
' Enumerate through the program array and create the programs.
For Each program In arrayOfPrograms
program.PackageID = packageID
program.Put_
Next
End Sub
The example method has the following parameters:
Parameter | Type | Description |
---|---|---|
connection |
- VBScript: SWbemServices | A valid connection to the SMS Provider. |
existingPDF_ID |
- VBScript: Integer |
ID of the package definition file. |
newPackageSourceFlag |
- VBScript: Integer |
The package source. |
newPackageSourcePath |
- VBScript: String |
The path to the package source. |
Robust Programming
For more information about error handling, see About Configuration Manager Errors.
See Also
Software distribution overview SMS_SCI_Component Server WMI Class