Share via


Erstellen eines Pakets

Im folgenden Beispiel wird gezeigt, wie Ein Paket in Configuration Manager mithilfe der SMS_Package Klassen- und Klasseneigenschaften erstellt wird.

So erstellen Sie ein Paket

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein.

  2. Erstellen Sie das neue Paketobjekt mithilfe der SMS_Package -Klasse.

  3. Füllen Sie die neuen Paketeigenschaften auf.

    Tipp

    Wenn Sie ein virtuelles Anwendungspaket erstellen, müssen Sie die SMS_Package Eigenschaften auf bestimmte Werte festlegen. Instanzen der SMS_VirtualApp -Klasse müssen auf Instanzen der -Klasse verweisen, die SMS_Package die in der folgenden Tabelle beschriebenen Eigenschaften verwenden.

    Virtuelles Anwendungspaket

    Eigenschaftenname Eigenschaftswert
    PackageType 7
    PkgSourceFlag 2
    PkgSourcePath \\someserver\somesharepath
  4. Speichern Sie das Paket.

Beispiel

Die folgende Beispielmethode erstellt ein neues Paket und füllt seine Eigenschaften für die Verwendung in der Softwareverteilung auf.

Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.


Sub CreatePackage(connection, newPackageName, newPackageDescription, newPackageSourceFlag, newPackageSourcePath)  

    ' Create the new package object.     Dim newPackage  
    Set newPackage = connection.Get("SMS_Package").SpawnInstance_  

    ' Populate the new package properties.  
    newPackage.Name = newPackageName  
    newPackage.Description = newPackageDescription  
    newPackage.PkgSourceFlag = newPackageSourceFlag  
    newPackage.PkgSourcePath = newPackageSourcePath  

    ' Save the package.  
    newPackage.Put_  

    ' Output the new package name.  
    wscript.echo "Created package: "  & newPackageDescription  

End Sub  
public void CreatePackage(WqlConnectionManager connection, string newPackageName, string newPackageDescription, int newPackageSourceFlag, string newPackageSourcePath)  
{  
    try  
    {  
        // Create new package object.  
        IResultObject newPackage = connection.CreateInstance("SMS_Package");  

        // Populate new package properties.  
        newPackage["Name"].StringValue = newPackageName;  
        newPackage["Description"].StringValue = newPackageDescription;  
        newPackage["PkgSourceFlag"].IntegerValue = newPackageSourceFlag;  
        newPackage["PkgSourcePath"].StringValue = newPackageSourcePath;  

        // Save new package and new package properties.  
        newPackage.Put();  

        // Output new package name.  
        Console.WriteLine("Created package: " + newPackageName);  
    }  

    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to create package. Error: " + ex.Message);  
        throw;  
    }  
}  

Die Beispielmethode verfügt über die folgenden Parameter:

Parameter Typ Beschreibung
connection -Verwalteten: WqlConnectionManager
– VBScript: SWbemServices
Eine gültige Verbindung mit dem SMS-Anbieter.
newPackageName -Verwalteten: String
-Vbscript: String
Der Name des neuen Pakets.
newPackageDescription -Verwalteten: String
-Vbscript: String
Die Beschreibung für das neue Paket.
newPackageSourceFlag -Verwalteten: Integer
-Vbscript: Integer
Die Paketquelle.
newPackageSourcePath -Verwalteten: String
-Vbscript: String
Der Pfad zur Paketquelle.

Kompilieren des Codes

Für das C#-Beispiel ist Folgendes erforderlich:

Namespaces

System

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Mscorlib

Robuste Programmierung

Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager Fehlern.

Siehe auch

Übersicht über die SoftwareverteilungSMS_Package WMI-Serverklasse
PowerShell-Cmdlet: New-CMPackage