Verwenden von Tasksequenzvariablen in einer ausgeführten Configuration Manager Tasksequenz
In Configuration Manager können Sie Tasksequenzvariablen in einer ausgeführten Tasksequenz mithilfe des COM-Automatisierungsobjekts (Microsoft.SMS.TSEnvironment
) der Tasksequenzumgebung erstellen, abrufen und festlegen.
In der Regel verwenden Sie eine Befehlszeilenaktion, die ein Skript ausführt, um auf die Tasksequenzvariablen zuzugreifen. Sie können aber auch innerhalb einer Tasksequenz auf sie zugreifen, indem Sie eine beliebige Programmierumgebung verwenden, die COM-Automatisierungsobjekte verwenden kann.
Hinweis
Wenn Sie eine Aufgabenvariable auf dem Configuration Manager-Client festlegen, wird sie für nachfolgende Schritte in der Tasksequenz verfügbar.
Um eine benutzerdefinierte Tasksequenzvariable zu erstellen, legen Sie eine Microsoft.SMS.TSEnvironment
Eigenschaft mithilfe des Namens der neuen Variablen fest, die Sie erstellen möchten. Wenn die Variable noch nicht vorhanden ist, wird sie erstellt. Wenn die Variable bereits vorhanden ist, wird ihr Wert aktualisiert. Anschließend können Sie den benutzerdefinierten Variablenwert aus Microsoft.SMS.TSEnvironment
abrufen.
Wenn eine Tasksequenzvariable ein Array ist, wird sie im folgenden Format übergeben:
<base array name><element #><Property>="value".
Die Variable ist beispielsweise OSDPartitions
ein Array von SMS_TaskSequencePartitionSettings
. Im Folgenden wird ein Array mit einem Element OSDPartitions
dargestellt:
OSDPartitions0Bootable="true"
OSDPartitions0FileSystem="NTFS"
OSDPartition0QuickFormat="false"
OSDPartitions0Size="100"
OSDPartitions0SizeUnits="Percent"
OSDPartitions0Type="Primary"
Für den Zugriff auf FileSystem
dieses Array verwenden OSDPartitions0FileSystem
Sie . Wenn das Array größer ist, verwendenOSDPartitions1FileSystem
Sie für das zweite Element usw. über das Array.
Es wird nicht empfohlen, verwalteten Code mit der Tasksequenzierungsumgebung zu verwenden, da Sie ihn in den folgenden Umgebungen nicht verwenden können:
Windows PE
Windows Server 2008
Windows 2000
Verwalteter Code funktioniert, wenn das vollständige Betriebssystem mit der richtigen Version von .NET Framework installiert wird.
Die erforderliche Version von .NET Framework hängt von der version von Visual Studio ab, die Sie verwenden.
Visual Studio | .NET Framework Version |
---|---|
Visual Studio 2003 | 1.0 |
Visual Studio 2005 | 2.0 |
Visual Studio 2008 | 2.0 bis 3.5 |
Sie müssen COM-Interop verwenden, um auf das TSEnvironment
Objekt zuzugreifen. Sie benötigen Folgendes:
Verweis auf die TSEnvironment 1.0-Typbibliothek.
Der TSEnvironmentLib-Namespace .
So verwenden Sie Taskvariablen in einer ausgeführten Tasksequenz
Erstellen Sie in einer ausgeführten Tasksequenz eine Instanz von
Microsoft.SMS.TSEnvironment
.Rufen Sie die erforderliche Umgebungsvariable ab oder legen Sie sie fest.
Beispiel
Die folgende Beispielmethode ruft die _SMSTSLogPath
Variable ab. Außerdem wird der Wert einer benutzerdefinierten Variablen und eines benutzerdefinierten Arrayvariablenwerts festgelegt.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.
Sub UseTaskSequenceVariables()
dim osd: set env = CreateObject("Microsoft.SMS.TSEnvironment")
dim logPath
' You can query the environment to get an existing variable.
logPath = env("_SMSTSLogPath")
wscript.echo logPath
' You can also set a variable in the Operating System Deployment environment.
env("MyCustomVariable") = "My Custom Value"
' Set the OSDPartitions(0) Bootable array member to 0.
env("OSDPartitions0Bootable") = "true"
End Sub
Kompilieren des Codes
Plattformen
Tasksequenzierungsumgebung für die Betriebssystembereitstellung
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
Objektübersicht: Herstellen einer Verbindung mit einem SMS-Anbieter in Configuration Manager mithilfe von verwaltetem Code
Herstellen einer Verbindung mit einem SMS-Anbieter in Configuration Manager mithilfe von WMI
TasksequenzübersichtFestlegen einer Tasksequenzvariable für die Betriebssystembereitstellung