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
Richten Sie eine Verbindung mit dem SMS-Anbieter ein.
Erstellen Sie das neue Paketobjekt mithilfe der
SMS_Package
-Klasse.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 derSMS_VirtualApp
-Klasse müssen auf Instanzen der -Klasse verweisen, dieSMS_Package
die in der folgenden Tabelle beschriebenen Eigenschaften verwenden.Virtuelles Anwendungspaket
Eigenschaftenname Eigenschaftswert PackageType 7 PkgSourceFlag 2 PkgSourcePath \\someserver\somesharepath 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