Aracılığıyla paylaş


Durum Geçiş Noktası için Restore-Only Modunu Ayarlama

Configuration Manager işletim sistemi dağıtım durumu geçiş noktasını, SMPQuiesceState embedded özelliğini ayarlayarak kullanıcı verilerini depolamaya yönelik yeni istekleri reddedecek şekilde yapılandıracaksınız.

SMPQuiesceState iki olası değere sahiptir.

Değer Tanım
0 Yalnızca geri yükleme modu kapalıdır.
1 Yalnızca geri yükleme modu açık.

Durum geçiş noktası için yalnızca geri yükleme modunu ayarlamak için

  1. SMS Sağlayıcısı ile bağlantı kurun. Daha fazla bilgi için bkz. SMS Sağlayıcısı ile ilgili temel bilgiler.

  2. Site denetim dosyasının durum geçiş noktası kaynakları bölümüne bağlantı oluşturun.

  3. Katıştırılmış özellikleri alın.

  4. SMPQuiesceState'i güncelleştirin.

  5. Değişiklikleri site denetim dosyasına işleyin.

Örnek

Aşağıdaki örnek yöntem, sağlanan değere göre yalnızca geri yükleme modunu ayarlar.

Örnek kodu çağırma hakkında bilgi için bkz. Configuration Manager Kod Parçacıklarını Çağırma.

Sub SetRestoreOnlyMode(connection,          _  
                       context,           _  
                       siteCode,               _  
                       enableRestoreOnlyMode)  

    ' Load site control file and get SMS State Migration Point section.  
    connection.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Refresh", , , context  

    Query = "SELECT * FROM SMS_SCI_SysResUse " & _  
            "WHERE RoleName = 'SMS State Migration Point' " & _  
            "AND SiteCode = '" & siteCode & "'"  

    Set SCIComponentSet = connection.ExecQuery(Query, , , context)  

    ' Only one instance is returned from the query.  
    For Each SCIComponent In SCIComponentSet  

         ' Display state migration point server name.  
         wscript.echo "SMS State Migration Point Server: " & SCIComponent.NetworkOSPath                                      

        ' Loop through the array of embedded property instances.  
        For Each vProperty In SCIComponent.Props  

            ' Setting: SMPQuiesceState  
            If vProperty.PropertyName = "SMPQuiesceState" Then  
                wscript.echo " "  
                wscript.echo vProperty.PropertyName  
                wscript.echo "Current value " &  vProperty.Value                 

                ' Modify the value.  
                vProperty.Value = enableRestoreOnlyMode  
                wscript.echo "New value " & enableRestoreOnlyMode  
            End If  

        Next     

             ' Update the component in your copy of the site control file. Get the path  
             ' to the updated object, which could be used later to retrieve the instance.  
             Set SCICompPath = SCIComponent.Put_( , context)  
    Next  

    ' Commit the change to the actual site control file.  
    Set InParams = connection.Get("SMS_SiteControlFile").Methods_("CommitSCF").InParameters.SpawnInstance_  
    InParams.SiteCode = siteCode  
    connection.ExecMethod "SMS_SiteControlFile", "CommitSCF", InParams, , context  
End Sub  
public void SetRestoreOnlyMode(  
    WqlConnectionManager connection,  
    string server,   
    string siteCode,   
    bool enableRestoreOnlyMode)  
{  
    try  
    {  
        // Get the site control file.  
        IResultObject ro = connection.GetInstance("SMS_SCI_SysResUse.FileType=2,ItemName='[\"Display=\\\\" + server + "\\\"]MSWNET:[\"SMS_SITE=" + siteCode + "\"]\\\\" + server + "\\,SMS State Migration Point',ItemType='System Resource Usage',SiteCode='" + siteCode + "'");  

        // Get the embedded properties.  
        Dictionary<string, IResultObject> embeddedProperties = ro.EmbeddedProperties;  

        // Set the restore only mode.  
        embeddedProperties["SMPQuiesceState"]["Value"].BooleanValue = enableRestoreOnlyMode;  

        ro.EmbeddedProperties = embeddedProperties;  

        // Commmit the changes.  
        ro.Put();  
    }  
    catch (SmsException e)  
    {  
        Console.WriteLine("Failed to set restore only mode" + e.Message);  
        throw;  
    }  
}  

Örnek yöntem aşağıdaki parametrelere sahiptir:

Parametre Tür Açıklama
connection -Yönetilen: WqlConnectionManager
- VBScript: SWbemServices
SMS Sağlayıcısına geçerli bir bağlantı.
context (VBScript) -Vbscript: SWbemContext Geçerli bir bağlam nesnesi. Daha fazla bilgi için bkz. WMI Kullanarak Configuration Manager Bağlam Niteleyicisi Ekleme.
server -Yönetilen: String
-Vbscript: String
Durum geçiş noktasının üzerinde çalıştığı Configuration Manager sunucusu.
siteCode -Yönetilen: String
-Vbscript: String
Configuration Manager site kodu.
enableRestoreOnlyMode -Yönetilen: Boolean
-Vbscript: Integer
Yalnızca geri yükleme modunu ayarlar.

- Yönetilen: true Yalnızca geri yükleme modunu açar; aksi takdirde false.
- VBScript: 1 geri yükleme modunu açar; aksi takdirde 0.

Kodu Derleme

C# örneğinde aşağıdaki derleme gereksinimleri vardır:

Ad alanları

Sistem

System.Collections.Generic

System.Text

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Derleme

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Sağlam Programlama

Hata işleme hakkında daha fazla bilgi için bkz. Configuration Manager Hataları Hakkında.

.NET Framework Güvenliği

Configuration Manager uygulamalarının güvenliğini sağlama hakkında daha fazla bilgi için bkz. rol tabanlı yönetim Configuration Manager.

Ayrıca Bkz

İşletim sistemi dağıtımı site rolü yapılandırması hakkındaYönetilen Kod Kullanarak Configuration Manager Site Denetim Dosyasını Okuma ve Yazma
WMI Kullanarak Configuration Manager Site Denetim Dosyasını Okuma ve Yazma