Share via


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

  1. Een verbinding met de SMS-provider instellen.

  2. Maak het nieuwe pakketobject met behulp van de SMS_Package klasse.

  3. 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 de SMS_VirtualApp klasse moeten verwijzen naar exemplaren van de SMS_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
  4. 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