Come impostare la modalità Restore-Only per un punto di migrazione stato
In Configuration Manager si configura il punto di migrazione dello stato di distribuzione del sistema operativo per rifiutare le nuove richieste di archiviazione dei dati utente impostando la proprietà incorporata SMPQuiesceState.
SMPQuiesceState ha due valori possibili.
Valore | Definizione |
---|---|
0 | La modalità di sola ripristino è disattivata. |
1 | La modalità di sola ripristino è attivata. |
Per impostare la modalità solo di ripristino per un punto di migrazione dello stato
Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.
Stabilire una connessione alla sezione delle risorse del punto di migrazione dello stato del file di controllo del sito.
Ottenere le proprietà incorporate.
Aggiornare SMPQuiesceState.
Eseguire il commit delle modifiche apportate al file di controllo del sito.
Esempio
Il metodo di esempio seguente imposta la modalità di sola ripristino in base al valore fornito.
Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice Configuration Manager.
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;
}
}
Il metodo di esempio include i parametri seguenti:
Parametro | Tipo | Descrizione |
---|---|---|
connection |
-Gestito: WqlConnectionManager - VBScript: SWbemServices |
Connessione valida al provider SMS. |
context (VBScript) |
-Vbscript: SWbemContext |
Oggetto di contesto valido. Per altre informazioni, vedere Come aggiungere un qualificatore di contesto Configuration Manager usando WMI. |
server |
-Gestito: String -Vbscript: String |
Il server Configuration Manager in cui è in esecuzione il punto di migrazione dello stato. |
siteCode |
-Gestito: String -Vbscript: String |
Codice del sito Configuration Manager. |
enableRestoreOnlyMode |
-Gestito: Boolean -Vbscript: Integer |
Imposta la modalità solo di ripristino. - Gestito: true attiva solo la modalità di ripristino; in caso contrario false , .- VBScript: 1 attiva la modalità di ripristino; in caso contrario 0 , . |
Compilazione del codice
L'esempio C# presenta i requisiti di compilazione seguenti:
Namespaces
Sistema
System.collections.generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Programmazione efficiente
Per altre informazioni sulla gestione degli errori, vedere Informazioni sugli errori di Configuration Manager.
Sicurezza di .NET Framework
Per altre informazioni sulla protezione delle applicazioni Configuration Manager, vedere Configuration Manager'amministrazione basata sui ruoli.
Vedere anche
Informazioni sulla configurazione del ruolo del sito di distribuzione del sistema operativo Come leggere e scrivere nel file di controllo del sito Configuration Manager usando codice gestito
Come leggere e scrivere nel file di controllo del sito Configuration Manager tramite WMI