次の方法で共有


パッケージを作成する方法

次の例では、クラスプロパティとクラスプロパティを使用してConfiguration Managerでパッケージを作成する方法をSMS_Package示します。

パッケージを作成するには

  1. SMS プロバイダーへの接続を設定します。

  2. クラスを使用して、新しいパッケージ オブジェクトを SMS_Package 作成します。

  3. 新しいパッケージ プロパティを設定します。

    ヒント

    仮想アプリケーション パッケージを作成するときは、プロパティを特定の SMS_Package 値に設定する必要があります。 クラスのインスタンスは、 SMS_VirtualApp 次の表で説明するプロパティを SMS_Package 使用する クラスのインスタンスを参照する必要があります。

    仮想アプリケーション パッケージ

    プロパティ名 プロパティ値
    PackageType 7
    PkgSourceFlag 2
    PkgSourcePath \\someserver\somesharepath
  4. パッケージを保存します。

次のメソッドの例では、新しいパッケージを作成し、そのプロパティを設定してソフトウェア配布で使用します。

サンプル コードの呼び出しについては、「Configuration Manager コード スニペットの呼び出し」を参照してください。


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;  
    }  
}  

このメソッドの例には、次のパラメーターがあります。

パラメーター 説明
connection -管理: WqlConnectionManager
- VBScript: SWbemServices
SMS プロバイダーへの有効な接続。
newPackageName -管理: String
-Vbscript: String
新しいパッケージの名前。
newPackageDescription -管理: String
-Vbscript: String
新しいパッケージの説明。
newPackageSourceFlag -管理: Integer
-Vbscript: Integer
パッケージ ソース。
newPackageSourcePath -管理: String
-Vbscript: String
パッケージ ソースへのパス。

コードのコンパイル

C# の例では、次のものが必要です。

名前空間

System

Microsoft。ConfigurationManagement.ManagementProvider

Microsoft。ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Mscorlib

堅牢なプログラミング

エラー処理の詳細については、「Configuration Manager エラーについて」を参照してください。

関連項目

サーバー WMI クラスSMS_Packageソフトウェア配布の概要
PowerShell コマンドレット: New-CMPackage