Festlegen des Restore-Only-Modus für einen Zustandsmigrationspunkt
In Configuration Manager konfigurieren Sie den Bereitstellungsstatusmigrationspunkt des Betriebssystems so, dass neue Anforderungen zum Speichern von Benutzerdaten abgelehnt werden, indem Sie die eingebettete SMPQuiesceState-Eigenschaft festlegen.
SMPQuiesceState verfügt über zwei mögliche Werte.
Wert | Definition |
---|---|
0 | Der reine Wiederherstellungsmodus ist deaktiviert. |
1 | Der reine Wiederherstellungsmodus ist aktiviert. |
So legen Sie den reinen Wiederherstellungsmodus für einen Zustandsmigrationspunkt fest
Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Grundlagen des SMS-Anbieters.
Stellen Sie eine Verbindung mit dem Abschnitt Ressourcen des Zustandsmigrationspunkts der Standortsteuerungsdatei her.
Rufen Sie die eingebetteten Eigenschaften ab.
Aktualisieren Sie SMPQuiesceState.
Committen Sie die Änderungen an der Websitesteuerungsdatei.
Beispiel
Die folgende Beispielmethode legt den reinen Wiederherstellungsmodus basierend auf dem angegebenen Wert fest.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.
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;
}
}
Die Beispielmethode verfügt über die folgenden Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
connection |
-Verwalteten: WqlConnectionManager – VBScript: SWbemServices |
Eine gültige Verbindung mit dem SMS-Anbieter. |
context (VBScript) |
-Vbscript: SWbemContext |
Ein gültiges Kontextobjekt. Weitere Informationen finden Sie unter Hinzufügen eines Configuration Manager Kontextqualifizierers mithilfe von WMI. |
server |
-Verwalteten: String -Vbscript: String |
Der Configuration Manager Server, auf dem der Zustandsmigrationspunkt ausgeführt wird. |
siteCode |
-Verwalteten: String -Vbscript: String |
Der Configuration Manager-Standortcode. |
enableRestoreOnlyMode |
-Verwalteten: Boolean -Vbscript: Integer |
Legt den reinen Wiederherstellungsmodus fest. – Verwaltet: true aktiviert den wiederherstellungsgeschützten Modus, andernfalls false .– VBScript: 1 Aktiviert den Wiederherstellungsmodus, andernfalls 0 . |
Kompilieren des Codes
Das C#-Beispiel hat die folgenden Kompilierungsanforderungen:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Robuste Programmierung
Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager Fehlern.
.NET Framework-Sicherheit
Weitere Informationen zum Schützen Configuration Manager Anwendungen finden Sie unter Configuration Manager rollenbasierte Verwaltung.
Siehe auch
Informationen zur Konfiguration der Standortrollen für die Betriebssystembereitstellung: Lesen und Schreiben in die Configuration Manager-Websitesteuerungsdatei mithilfe von verwaltetem Code
Lesen und Schreiben in die Configuration Manager Site Control-Datei mithilfe von WMI