Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Rolę punktu migracji stanu można utworzyć w Configuration Manager, tworząc wystąpienie klasy WMI serwera SMS_SCI_SysResUse i podając wartości właściwości w poniższej tabeli.
Właściwość | Opis |
---|---|
RoleName |
Nazwa roli. W przypadku punktu migracji stanu wartość to SMS State Migration Point. |
SiteCode |
Kod witryny. |
NALPath |
Ścieżka warstwy abstrakcji sieci (NAL) do punktu migracji stanu. Aby uzyskać więcej informacji, zobacz PackNALPath Method in Class SMS_NAL_Methods (Metoda PackNALPath klasy SMS_NAL_Methods). |
NALType |
Typ zasobu. W przypadku punktu migracji stanu powinien to być system Windows NT Server. |
Należy również ustawić wartości początkowe dla następujących osadzonych właściwości i osadzonych list właściwości.
Name (Nazwa) | Opis |
---|---|
Server Remote Name |
Serwer, który ma punkt migracji stanu. Właściwość embedded. |
SMPQuiesceState |
Ustawia tryb tylko do przywracania. Aby uzyskać więcej informacji, zobacz How to Set the Restore-Only Mode for a State Migration Point (Jak ustawić tryb Restore-Only dla punktu migracji stanu). Właściwość embedded. |
SMPStoreDeletionDelayTimeInMinutes |
Ustawia zasady usuwania. Aby uzyskać więcej informacji, zobacz How to Set the Deletion Policy for a State Migration Point (Jak ustawić zasady usuwania dla punktu migracji stanu). Właściwość embedded. |
SMPStoreDeletionCycleTimeInMinutes |
Ustawia zasady usuwania. Aby uzyskać więcej informacji, zobacz How to Set the Deletion Policy for a State Migration Point (Jak ustawić zasady usuwania dla punktu migracji stanu). |
Directories |
Wyświetla listę folderów punktu migracji stanu. Aby uzyskać więcej informacji, zobacz Jak dodać folder punktu migracji stanu. |
Aby utworzyć rolę punktu migracji stanu
Skonfiguruj połączenie z dostawcą programu SMS. Aby uzyskać więcej informacji, zobacz Podstawy dostawcy programu SMS.
Utwórz wystąpienie klasy WMI serwera SMS_SCI_SysResUse.
Wypełnij właściwości wymienione powyżej.
SMS_SCI_SystResUse
Zatwierdź obiekt.
Przykład
Poniższa przykładowa metoda tworzy punkt migracji stanu na podstawie podanego kodu lokacji i ścieżki NAL. Niektóre funkcje pomocnicze są udostępniane do zapisywania osadzonych właściwości i osadzonych list właściwości w pliku kontroli lokacji.
Ważna
W tym przykładzie użyto innych fragmentów kodu punktu migracji stanu, aby ustawić różne wartości. Metody AddSmpFolder
, SetRestoreOnlyMode
, SetDeletionPolicy
zostały opisane w poniższych tematach:
Jak dodać folder punktu migracji stanu
- Jak ustawić tryb Restore-Only dla punktu migracji stanu
- Jak ustawić zasady usuwania dla punktu migracji stanu
Metody
AddSmpFolder
,SetRestoreOnlyMode
,SetDeletionPolicy
muszą zostać uwzględnione, aby przykład działał. Metody nie są zawarte w poniższych fragmentach kodu.
Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu Configuration Manager.
public void CreateSmpRole(
WqlConnectionManager connection,
string serverName,
string siteCode,
string nalPath)
{
try
{
// Create the state migration point resource object.
IResultObject smpRole = connection.CreateInstance("SMS_SCI_SysResUse");
smpRole["RoleName"].StringValue = "SMS State Migration Point";
// Set the state migration point properties.
smpRole["SiteCode"].StringValue = siteCode;
smpRole["NALPath"].StringValue = nalPath;
smpRole["NALType"].StringValue = "Windows NT Server";
// Create the embedded property and property lists.
this.WriteScfEmbeddedProperty(smpRole, "Server Remote Name", 0, serverName, string.Empty);
this.WriteScfEmbeddedProperty(smpRole, "SMPQuiesceState", 1, string.Empty, string.Empty);
this.WriteScfEmbeddedProperty(smpRole, "SMPStoreDeletionDelayTimeInMinutes", 0, string.Empty, string.Empty);
this.WriteScfEmbeddedProperty(smpRole, "SMPStoreDeletionCycleTimeInMinutes", 0, string.Empty, string.Empty);
this.WriteScfEmbeddedPropertyList(smpRole, "Directories", null);
// Commit the site role.
smpRole.Put();
// Use SDK snippets to populate some values.
this.AddSmpFolder(connection, @"C:\temp", 100, 10, 1, serverName, siteCode);
this.SetRestoreOnlyMode(connection, serverName, siteCode, true);
this.SetDeletionPolicy(connection, serverName, siteCode, 10);
}
catch (SmsException e)
{
Console.WriteLine("Failed to create the state migration point: " + e.Message);
throw;
}
}
public void WriteScfEmbeddedPropertyList(
IResultObject resource,
string propertyListName,
string[] values
)
// Create an embedded property list for the supplied resource.
{
Dictionary<string, IResultObject> EmbeddedPropertyList = resource.EmbeddedPropertyLists;
// Get the property list, or create it.
IResultObject ropl;
if (EmbeddedPropertyList.ContainsKey(propertyListName))
{
ropl = EmbeddedPropertyList[propertyListName];
}
else
{
ConnectionManagerBase connection = resource.ConnectionManager;
ropl = connection.CreateEmbeddedObjectInstance("SMS_EmbeddedPropertyList");
EmbeddedPropertyList.Add(propertyListName, ropl);
}
// Set the property list properties.
ropl["PropertyListName"].StringValue = propertyListName;
ropl["Values"].StringArrayValue = values;
resource.EmbeddedPropertyLists = EmbeddedPropertyList;
}
public void WriteScfEmbeddedProperty(
IResultObject resource,
string propertyName,
int value,
string value1,
string value2)
{
// Properties
// Server remote name
Dictionary<string, IResultObject> EmbeddedProperties = resource.EmbeddedProperties;
// Get the property, or create it.
IResultObject ro;
if (EmbeddedProperties.ContainsKey(propertyName))
{
ro = EmbeddedProperties[propertyName];
}
else
{
ConnectionManagerBase connection = resource.ConnectionManager;
ro = connection.CreateEmbeddedObjectInstance("SMS_EmbeddedProperty");
EmbeddedProperties.Add(propertyName, ro);
}
ro["PropertyName"].StringValue = propertyName;
ro["Value"].IntegerValue = value;
ro["Value1"].StringValue = value1;
ro["Value2"].StringValue = value2;
resource.EmbeddedProperties = EmbeddedProperties;
}
Przykładowa metoda ma następujące parametry:
Parametr | Wpisać | Opis |
---|---|---|
connection |
Zarządzane: WqlConnectionManager |
Prawidłowe połączenie z dostawcą programu SMS. |
serverName |
Zarządzane: String |
Serwer Configuration Manager, na którym działa punkt migracji stanu. |
siteCode |
Zarządzane: String |
Kod witryny Configuration Manager. |
nalPath |
Zarządzane: String |
Ścieżka NAL do punktu migracji stanu. Na przykład ["Display=\\SERVERNAME\"]MSWNET:["SMS_SITE=SITECODE"]\\SERVERNAME\ |
Kompilowanie kodu
Przykład języka C# ma następujące wymagania dotyczące kompilacji:
Obszary nazw
System
System.collections.generic
System.text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Zestawu
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Niezawodne programowanie
Aby uzyskać więcej informacji na temat obsługi błędów, zobacz Informacje o błędach Configuration Manager.
zabezpieczenia .NET Framework
Aby uzyskać więcej informacji na temat zabezpieczania aplikacji Configuration Manager, zobacz Configuration Manager administracja oparta na rolach.
Zobacz też
SMS_SCI_SysResUse Server WMI Class
PackNALPath, metoda w klasie SMS_NAL_Methods
Informacje o konfiguracji roli lokacji wdrożenia systemu operacyjnegoJak dodać folder punktu migracji stanu
Jak ustawić zasady usuwania dla punktu migracji stanu
Jak ustawić tryb Restore-Only dla punktu migracji stanu
Jak odczytywać i zapisywać w pliku kontroli lokacji Configuration Manager przy użyciu kodu zarządzanego
Jak odczytywać i zapisywać w pliku kontroli lokacji Configuration Manager przy użyciu usługi WMI