Een pakket maken
In het volgende voorbeeld ziet u hoe u een pakket maakt in Configuration Manager met behulp van de SMS_Package
klasse- en klasse-eigenschappen.
Een pakket maken
Een verbinding met de SMS-provider instellen.
Maak het nieuwe pakketobject met behulp van de
SMS_Package
klasse.Vul de eigenschappen van het nieuwe pakket in.
Tip
Wanneer u een virtueel toepassingspakket maakt, moet u de
SMS_Package
eigenschappen instellen op specifieke waarden. Exemplaren van deSMS_VirtualApp
klasse moeten verwijzen naar exemplaren van deSMS_Package
klasse die gebruikmaken van de eigenschappen die in de volgende tabel worden beschreven.Virtueel toepassingspakket
Eigenschapsnaam Eigenschapswaarde PackageType 7 PkgSourceFlag 2 PkgSourcePath \\someserver\somesharepath Sla het pakket op.
Voorbeeld
Met de volgende voorbeeldmethode maakt u een nieuw pakket en vult u de eigenschappen ervan in voor gebruik in softwaredistributie.
Zie Aanroepen Configuration Manager codefragmenten voor meer informatie over het aanroepen van de voorbeeldcode.
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;
}
}
De voorbeeldmethode heeft de volgende parameters:
Parameter | Type | Beschrijving |
---|---|---|
connection |
-Beheerd: WqlConnectionManager - VBScript: SWbemServices |
Een geldige verbinding met de SMS-provider. |
newPackageName |
-Beheerd: String -Vbscript: String |
De naam van het nieuwe pakket. |
newPackageDescription |
-Beheerd: String -Vbscript: String |
De beschrijving van het nieuwe pakket. |
newPackageSourceFlag |
-Beheerd: Integer -Vbscript: Integer |
De pakketbron. |
newPackageSourcePath |
-Beheerd: String -Vbscript: String |
Het pad naar de pakketbron. |
De code compileren
Voor het C#-voorbeeld is het volgende vereist:
Naamruimten
Systeem
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Vergadering
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
mscorlib
Robuust programmeren
Zie Over Configuration Manager fouten voor meer informatie over foutafhandeling.
Zie ook
Overzicht van softwaredistributieSMS_Package WMI-klasse
PowerShell-cmdlet: New-CMPackage