Método TaskFolder.RegisterTaskDefinition

Para el scripting, registra (crea) una tarea en una ubicación especificada mediante el objeto TaskDefinition para definir una tarea.

Sintaxis

TaskFolder.RegisterTaskDefinition( _
  ByVal path, _
  ByVal definition, _
  ByVal flags, _
  ByVal userId, _
  ByVal password, _
  ByVal logonType, _
  [ ByVal sddl ], _
  ByRef task _
)

Parámetros

path [in]

Nombre de la tarea. Si este valor es Nothing, la tarea se registrará en la carpeta raíz de la tarea y el nombre de la tarea será un valor GUID creado por el servicio Programador de tareas.

Un nombre de tarea no puede comenzar ni terminar con un carácter de espacio. El carácter '.' no se puede usar para especificar la carpeta de tareas actual y el elemento '.' no se pueden usar caracteres para especificar la carpeta de tareas primaria en la ruta de acceso.

definición [in]

Definición de la tarea registrada.

flags [in]

Constante TASK_CREATION .

Valor Significado
TASK_VALIDATE_ONLY
0x1
El Programador de tareas comprueba la sintaxis del XML que describe la tarea, pero no registra la tarea. Esta constante no se puede combinar con los valores de TASK_CREATE, TASK_UPDATE o TASK_CREATE_OR_UPDATE .
TASK_CREATE
0x2
El Programador de tareas registra la tarea como una nueva tarea.
TASK_UPDATE
0x4
El Programador de tareas registra la tarea como una versión actualizada de una tarea existente. Cuando se actualiza una tarea con un desencadenador de registro, la tarea se ejecutará después de que se produzca la actualización.
TASK_CREATE_OR_UPDATE
0x6
El Programador de tareas registra la tarea como una nueva tarea o como una versión actualizada si la tarea ya existe. Equivalente a TASK_CREATE | TASK_UPDATE.
TASK_DISABLE
0x8
El Programador de tareas deshabilita la tarea existente.
TASK_DONT_ADD_PRINCIPAL_ACE
0x10
Se impide que el Programador de tareas agregue la entrada allow access-control (ACE) para la entidad de seguridad de contexto. Cuando se llama a la función TaskFolder.RegisterTaskDefinition con esta marca para actualizar una tarea, el servicio Programador de tareas no agrega la ACE para la nueva entidad de seguridad de contexto y no quita la ACE de la entidad de contexto anterior.
TASK_IGNORE_REGISTRATION_TRIGGERS
0x20
El Programador de tareas crea la tarea, pero omite los desencadenadores de registro en la tarea. Al omitir los desencadenadores de registro, la tarea no se ejecutará cuando se registre, a menos que un desencadenador basado en tiempo haga que se ejecute en el registro.

userId [in]

Credenciales de usuario que se usan para registrar la tarea. Si está presente, estas credenciales tienen prioridad sobre las credenciales especificadas en el objeto de definición de tarea al que apunta el parámetro de definición .

Nota

Si la tarea se define como una tarea del Programador de tareas 1.0, no use un nombre de grupo (en lugar de un nombre de usuario específico) en este parámetro userId. Una tarea se define como una tarea del Programador de tareas 1.0 cuando la propiedad Compatibility está establecida en 1 en la configuración de la tarea.

contraseña [in]

Contraseña del userId que se usa para registrar la tarea. Cuando se usa el tipo de inicio de sesión TASK_LOGON_SERVICE_ACCOUNT, la contraseña debe ser un valor VARIANT vacío, como VT_NULL o VT_EMPTY.

logonType [in]

Define qué técnica de inicio de sesión se usa para ejecutar la tarea registrada.

Valor Significado
TASK_LOGON_NONE
0
No se especifica el método de inicio de sesión. Se usa para credenciales que no son NT.
TASK_LOGON_PASSWORD
1
Use una contraseña para iniciar sesión en el usuario. La contraseña debe proporcionarse en el momento del registro.
TASK_LOGON_S4U
2
Use un token interactivo existente para ejecutar una tarea. El usuario debe iniciar sesión con un servicio para el inicio de sesión del usuario (S4U). Cuando se usa un inicio de sesión S4U, el sistema no almacena ninguna contraseña y no hay acceso a la red ni a los archivos cifrados.
TASK_LOGON_INTERACTIVE_TOKEN
3
El usuario ya debe haber iniciado sesión. La tarea solo se ejecutará en una sesión interactiva existente.
TASK_LOGON_GROUP
4
Activación de grupo. El campo groupId especifica el grupo.
TASK_LOGON_SERVICE_ACCOUNT
5
Indica que se usa una cuenta de sistema local, servicio local o servicio de red como contexto de seguridad para ejecutar la tarea.
TASK_LOGON_INTERACTIVE_TOKEN_OR_PASSWORD
6
En primer lugar, use el token interactivo. Si el usuario no ha iniciado sesión (no hay ningún token interactivo disponible), se usa la contraseña. La contraseña debe especificarse cuando se registra una tarea. Esta marca no se recomienda para las nuevas tareas porque es menos confiable que TASK_LOGON_PASSWORD.

sddl [in, optional]

Descriptor de seguridad asociado a la tarea registrada. Puede especificar la lista de control de acceso (ACL) en el descriptor de seguridad de una tarea para permitir o denegar el acceso de determinados usuarios y grupos a una tarea.

Nota

Si se deniega el acceso a una tarea a la cuenta del sistema local, el servicio Programador de tareas puede producir resultados inesperados.

tarea [out]

Objeto RegisteredTask que representa la nueva tarea.

Valor devuelto

Este método no devuelve ningún valor.

Comentarios

Para una tarea, que contiene una acción de cuadro de mensaje, se mostrará el cuadro de mensaje si la tarea está activada y la tarea tiene un tipo de inicio de sesión interactivo. Para establecer el tipo de inicio de sesión de tarea en interactivo, especifique 3 (TASK_LOGON_INTERACTIVE_TOKEN) o 4 (TASK_LOGON_GROUP) en la propiedad LogonType de la entidad de seguridad de la tarea o en el parámetro logonType de TaskFolder.RegisterTask o TaskFolder.RegisterTaskDefinition.

Solo un miembro del grupo Administradores puede crear una tarea con un desencadenador de arranque.

Puede registrar correctamente una tarea con un grupo especificado en el parámetro userId y 3 (TASK_LOGON_INTERACTIVE_TOKEN) especificados en el parámetro logonType de TaskFolder.RegisterTask o TaskFolder.RegisterTaskDefinition, pero la tarea no se ejecutará.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 [solo aplicaciones de escritorio]
Biblioteca de tipos
Taskschd.tlb
Archivo DLL
Taskschd.dll

Consulte también

Programador de tareas

RegisteredTask

TaskFolder