次の方法で共有


構成基準と構成項目をエクスポートする方法

Configuration Managerで、Configuration Manager SDK を使用して構成基準または構成項目をエクスポートするには、関連SMS_ConfigurationItemするインスタンスを読み取り、プロパティ (文字列) をファイルに書き込SDMPackageXMLみます。

重要

XML ファイルのエンコードは、UTF-16 でエンコードされた Unicode に設定する必要があります。

構成基準と構成項目をエクスポートするには

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

  2. 構成項目の一意の ID (CI_ID) を使用して、 SMS_ConfigurationItem クラスの特定のインスタンスを取得します。

  3. 構成項目 XML (SDMPackageXML) を変数にコピーします。

  4. 構成項目 XML コンテンツをファイルに書き込みます。

次のコード例は、構成基準または構成項目のインスタンスを読み取り、ファイルにエクスポートする方法を示しています。

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


Sub DCMExportBaselineOrCI(swbemServices, _  
                          pathToFile,    _  
                          configurationItemId)  

' Set required variables.  
fileContents          =    ""  
configurationItemXML  =    null  

' Get specified configuration item (configurationItemId variable).  
Set getCIInfo = swbemServices.Get("SMS_ConfigurationItem.CI_ID=" & configurationItemId )  

' Copy configuration item XML into variable.   
configurationItemXML = getCIInfo.SDMPackageXML  

Wscript.Echo configurationItemXML  

' Open file for write (Unicode option enabled by second true).  
Set FSO = CreateObject("Scripting.FileSystemObject")  
Set textFile = FSO.CreateTextFile(pathToFile, true, true)  

' Write XML content to file specified by pathToFile.       
textFile.Write configurationItemXML  
textFile.Close   

Wscript.Echo " "  
Wscript.Echo "Successfully wrote " & pathToFile  

End Sub  


public void DCMExportBaselineOrCI(WqlConnectionManager connection,  
                                  string pathToOutputFile,  
                                  string configurationItemId)  
{  

    // Set required variables.  
    string configurationItemXML = null;  

    try  
    {  
        // Get the specified configuration item (configurationItemId variable).  
        IResultObject getCIInfo = connection.GetInstance(@"SMS_ConfigurationItem.CI_ID=" + configurationItemId);  

        // Copy configuration item XML into variable.   
        configurationItemXML = getCIInfo["SDMPackageXML"].StringValue;  
    }  
    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to retrieve configuration item xml. " + "\n" + ex.Message);  
        throw;  
    }  

    StreamWriter sw = null;  
    try  
    {  
        // Open file for output.  
        sw = new StreamWriter(pathToOutputFile, false, System.Text.Encoding.Unicode);  

        // Write XML to output file.  
        sw.Write(configurationItemXML);  
    }  
    catch (Exception ex)  
    {  
        Console.WriteLine("Failed to write configuration item XML to: " + pathToOutputFile + "\n" + ex.Message);  
        throw;  
    }  
    finally  
    {  
        if (sw != null)  
        {  
            sw.Close();  
        }  
    }  

    Console.WriteLine("Wrote configuration item XML to: " + pathToOutputFile);  
}  

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

パラメーター 説明
connection -管理: WqlConnectionManager
- VBScript: SWbemServices
SMS プロバイダーへの有効な接続。
- pathToOutputFile
- pathToFile
-管理: String
-Vbscript: String
出力ファイルへのパス。
configurationItemId -管理: String
-Vbscript: String
エクスポートする構成項目の識別子。

コードのコンパイル

名前空間

System

System.Collections.Generic

System.ComponentModel

Microsoft。ConfigurationManagement.ManagementProvider

Microsoft。ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

堅牢なプログラミング

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

.NET Framework のセキュリティ

Configuration Manager アプリケーションのセキュリティ保護の詳細については、「ロールベースの管理Configuration Manager」を参照してください。

関連項目

構成基準と構成項目について
オブジェクトの概要マネージド コードを使用してConfiguration Manager プロバイダーに接続する方法
WMI を使用してConfiguration Manager プロバイダーに接続する方法
サーバー WMI クラスのSMS_BaselineAssignment
SMS_ConfigurationItem サーバー WMI クラス