Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie erstellen eine Bereitstellungsvorlage für Softwareupdates in Configuration Manager, indem Sie eine instance der SMS_Template
Klasse erstellen und die Eigenschaften auffüllen.
So erstellen Sie eine Bereitstellungsvorlage
Richten Sie eine Verbindung mit dem SMS-Anbieter ein.
Erstellen Sie das neue Vorlagenobjekt mithilfe der
SMS_Template
-Klasse.Füllen Sie die neuen Vorlageneigenschaften auf.
Speichern Sie die neue Vorlage und die Eigenschaften.
Beispiel
Die folgende Beispielmethode zeigt, wie Sie mithilfe der SMS_Template
Klassen- und Klasseneigenschaften eine Bereitstellungsvorlage für Softwareupdates erstellen.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.
Hinweis
In den folgenden Codebeispielen werden die Vorlageneinstellungen mithilfe einer Zeichenfolgenvariablen namens deploymentTemplateSettings an die -Methode übergeben. Die Vorlageneinstellungen werden in einer XML-Struktur gespeichert.
VB-Vorlageneinstellungsbeispiel (eine lange Zeichenfolge):
deploymentTemplateSettings = "<TemplateDescription xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema""> <CollectionId>SMS00001</CollectionId> <IncludeSub>true</IncludeSub> <AttendedInstall>true</AttendedInstall> <UTC>true</UTC> <Duration>2</Duration> <DurationUnits>Weeks</DurationUnits> <SuppressServers>Unchecked</SuppressServers> <SuppressWorkstations>Unchecked</SuppressWorkstations> <AllowRestart>false</AllowRestart> <Deploy2003>true</Deploy2003> <CollectImmediately>false</CollectImmediately> <LocalDPOption>DownloadAndInstall</LocalDPOption> <RemoteDPOption>DownloadAndInstall</RemoteDPOption> <DisableMomAlert>false</DisableMomAlert> <GenerateMomAlert>false</GenerateMomAlert> <UseRemoteDP>false</UseRemoteDP> <UseUnprotectedDP>false</UseUnprotectedDP> </TemplateDescription>"
C#-Vorlageneinstellungsbeispiel (die gleichen Vorlageneinstellungen und immer noch als Zeichenfolge übergeben, aber die XML-Struktur ist offensichtlicher):
string deploymentTemplateSettings =
@"<TemplateDescription xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
<CollectionId>SMS00001</CollectionId>
<IncludeSub>true</IncludeSub>
<AttendedInstall>true</AttendedInstall>
<UTC>true</UTC>
<Duration>2</Duration>
<DurationUnits>Weeks</DurationUnits>
<SuppressServers>Unchecked</SuppressServers>
<SuppressWorkstations>Unchecked</SuppressWorkstations>
<AllowRestart>false</AllowRestart>
<Deploy2003>true</Deploy2003>
<CollectImmediately>false</CollectImmediately>
<LocalDPOption>DownloadAndInstall</LocalDPOption>
<RemoteDPOption>DownloadAndInstall</RemoteDPOption>
<DisableMomAlert>false</DisableMomAlert>
<GenerateMomAlert>false</GenerateMomAlert>
<UseRemoteDP>false</UseRemoteDP>
<UseUnprotectedDP>false</UseUnprotectedDP>
</TemplateDescription>";
Sub CreateSUMDeploymentTemplate(connection, _
newTemplateName, _
newTemplateDescription, _
newTemplateSettings, _
newTemplateType)
' Create the new Template object.
Set newSUMTemplate = connection.Get("SMS_Template").SpawnInstance_
' Populate the SMS_Template properties.
' Note: The template name (newTemplateName) must be unique.
newSUMTemplate.Name = newTemplateName
newSUMTemplate.Description = newTemplateDescription
newSUMTemplate.Data = newTemplateSettings
newSUMTemplate.Type = newTemplateType
' Save the new template and properties.
newSUMTemplate.Put_
' Output the new template name.
Wscript.Echo "Created new template: " & newTemplateName
End Sub
public void CreateSUMDeploymentTemplate(WqlConnectionManager connection,
string newTemplateName,
string newTemplateDescription,
string newTemplateSettings,
int newTemplateType)
{
try
{
// Create the template object.
IResultObject newSUMTemplate = connection.CreateInstance("SMS_Template");
// Populate the new template properties.
// Note: The template name (newTemplateName) must be unique.
newSUMTemplate["Name"].StringValue = newTemplateName;
newSUMTemplate["Description"].StringValue = newTemplateDescription;
newSUMTemplate["Data"].StringValue = newTemplateSettings;
newSUMTemplate["Type"].IntegerValue = newTemplateType;
// Save the new template and the new template properties.
newSUMTemplate.Put();
// Output the new template name.
Console.WriteLine("Created template: " + newTemplateName);
}
catch (SmsException ex)
{
Console.WriteLine("Failed to create template. Error: " + ex.Message);
throw;
}
}
Diese Beispielmethode weist die folgenden Parameter auf:
Parameter | Typ | Beschreibung |
---|---|---|
connection |
-Gehandhabt: WqlConnectionManager – VBScript: SWbemServices |
Eine gültige Verbindung mit dem SMS-Anbieter. |
newTemplateName |
-Gehandhabt: String – VBScript: String |
Der name der neuen Vorlage. Der Vorlagenname muss eindeutig sein. |
newTemplateDescription |
-Gehandhabt: String – VBScript: String |
Die Beschreibung für die neue Vorlage. |
newTemplateSettings |
-Gehandhabt: String – VBScript: String |
Die neuen Vorlageneinstellungen. Die Einstellungen befinden sich in einer XML-Struktur, die als Zeichenfolge gespeichert wird.
|
newTemplateType |
-Gehandhabt: Integer – VBScript: Integer |
Der neue Vorlagentyp. Derzeit ist der einzige mögliche Wert: - 0 (SUM_DEPLOYMENT) |
Kompilieren des Codes
Für dieses C#-Beispiel ist Folgendes erforderlich:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
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 zu Softwareupdatebereitstellungen: Zuweisen eines Pakets zu einem VerteilungspunktSMS_Template