Cómo usar variables de secuencia de tareas en una secuencia de tareas de Configuration Manager en ejecución

En Configuration Manager, puede crear, obtener y establecer variables de secuencia de tareas en una secuencia de tareas en ejecución utilizando el objeto de automatización COM del entorno de secuencia de tareas (Microsoft.SMS.TSEnvironment).

Normalmente, se usa una acción de línea de comandos que ejecuta un script para tener acceso a las variables de secuencia de tareas. Pero también puede tener acceso a ellos, dentro de una secuencia de tareas en ejecución, utilizando cualquier entorno de programación que pueda utilizar objetos de automatización COM.

Nota:

Al establecer una variable de tarea en el cliente de Configuration Manager, estará disponible para los pasos posteriores de la secuencia de tareas.

Para crear una variable de secuencia de tareas personalizada, establezca una Microsoft.SMS.TSEnvironment propiedad con el nombre de la nueva variable que desea crear. Si la variable aún no existe, se crea. Si la variable ya existe, se actualiza su valor. Más adelante puede obtener el valor de variable personalizada de Microsoft.SMS.TSEnvironment.

Cuando una variable de secuencia de tareas es una matriz, se pasa en el siguiente formato:

<base array name><element #><Property>="value".

Por ejemplo, la OSDPartitions variable es una matriz de SMS_TaskSequencePartitionSettings. El siguiente ejemplo representa una matriz de un elemento OSDPartitions :

OSDPartitions0Bootable="true"
OSDPartitions0FileSystem="NTFS"
OSDPartition0QuickFormat="false"
OSDPartitions0Size="100"
OSDPartitions0SizeUnits="Percent"
OSDPartitions0Type="Primary"

Para acceder FileSystem en esta matriz, use OSDPartitions0FileSystem. Si la matriz es mayor, usaríaOSDPartitions1FileSystem para el segundo elemento y así sucesivamente a través de la matriz.

No se recomienda usar código administrado con el entorno de secuenciación de tareas porque no se puede usar en los siguientes entornos:

  • Windows PE

  • Windows Server 2008

  • Windows 2000

    El código administrado funciona cuando todo el sistema operativo se ejecuta con la versión correcta de .NET Framework instalada.

    La versión de .NET Framework que se requiere depende de la versión de Visual Studio que use.

Visual Studio Versión de .NET Framework
Visual Studio 2003 1.0
Visual Studio 2005 2.0
Visual Studio 2008 De 2,0 a 3,5

Necesitará usar la TSEnvironment interoperabilidad COM para obtener acceso al objeto. Se necesita lo siguiente:

  • Referencia a la biblioteca de tipos TSEnvironment 1.0.

  • El espacio de nombres TSEnvironmentLib .

Usar variables de tarea en una secuencia de tareas en ejecución

  1. En una secuencia de tareas en ejecución, cree una instancia de Microsoft.SMS.TSEnvironment.

  2. Obtenga o establezca la variable de entorno necesaria.

Ejemplo

El siguiente método de ejemplo obtiene la _SMSTSLogPath variable. También establece el valor de una variable personalizada y un valor de variable personalizada de matriz.

Para obtener información sobre cómo llamar al código de ejemplo, consulte Llamar a fragmentos de código de Configuration Manager.

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

Compilar el código

Plataformas

Implementación del sistema operativo Entorno de secuenciación de tareas

Programación sólida

Para obtener más información acerca del control de errores, consulte Acerca de los errores de Configuration Manager.

Seguridad de .NET Framework

Para obtener más información acerca de cómo proteger las aplicaciones de Configuration Manager, consulte Administración basada en roles de Configuration Manager.

Consulta también

Introducción a los objetosCómo conectarse a un proveedor de SMS en Configuration Manager mediante código administradoCómo conectarse a un proveedor de SMS en Configuration Manager mediante WMI Introducción a la secuencia de tareasCómo establecer una variable de secuencia de tareas de implementación del sistema operativo