Método ITaskFolder::RegisterTask (taskschd.h)
Registra (crea) una nueva tarea en la carpeta mediante XML para definir la tarea.
Sintaxis
HRESULT RegisterTask(
[in] BSTR path,
[in] BSTR xmlText,
[in] LONG flags,
[in] VARIANT userId,
[in] VARIANT password,
[in] TASK_LOGON_TYPE logonType,
[in, optional] VARIANT sddl,
[out] IRegisteredTask **ppTask
);
Parámetros
[in] path
Nombre de la tarea. Si este valor es NULL, 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. No se puede usar el carácter '.' para especificar la carpeta de tareas actual y '.'. no se pueden usar caracteres para especificar la carpeta de tareas primaria en la ruta de acceso.
[in] xmlText
Definición con formato XML de la tarea.
Los temas siguientes contienen tareas definidas mediante XML.
- Ejemplo de desencadenador de tiempo de (XML)
- Ejemplo de desencadenador de eventos de (XML)
- ejemplo de desencadenador diario (XML)
- Ejemplo de desencadenador de registro de (XML)
- Ejemplo de desencadenador semanal (XML) de (XML)
- Ejemplo de desencadenador de inicio de sesión de (XML)
- Ejemplo de desencadenador de arranque de (XML)
[in] flags
Constante TASK_CREATION.
[in] userId
Credenciales de usuario usadas para registrar la tarea.
[in] password
Contraseña del userId usado para registrar la tarea. Cuando se usa el tipo de inicio de sesión de TASK_LOGON_SERVICE_ACCOUNT, la contraseña debe ser un valor VARIANT vacío, como VT_NULL o VT_EMPTY.
[in] logonType
Valor que define qué técnica de inicio de sesión se usa para ejecutar la tarea registrada.
[in, optional] sddl
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.
[out] ppTask
Interfaz IRegisteredTask que representa la nueva tarea.
Pase una referencia a un
Valor devuelto
Este método puede devolver uno de estos valores.
Código y valor devueltos | Descripción |
---|---|
|
La operación se completó correctamente. |
|
Se deniega el acceso para conectarse al servicio Programador de tareas. |
|
La aplicación no tiene suficiente memoria para completar la operación o el usuario de o contraseña tiene al menos un valor NULL y un valor distinto de NULL. |
|
La tarea está registrada, pero puede no iniciarse. El privilegio de inicio de sesión por lotes debe estar habilitado para la entidad de seguridad de la tarea. |
|
La tarea está registrada, pero no todos los desencadenadores especificados iniciarán la tarea. |
Observaciones
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 para que sea interactivo, especifique TASK_LOGON_INTERACTIVE_TOKEN o TASK_LOGON_GROUP en la propiedad LogonType de la entidad de seguridad de la tarea o en el parámetro logonType de ITaskFolder::RegisterTask o ITaskFolder::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
Pasar los valores TASK_VALIDATE_ONLY y TASK_IGNORE_REGISTRATION_TRIGGERS juntos a las marcas de parámetro es un argumento no válido.
Si una tarea define una red que no existe en la configuración de NetworkSettings de la tarea, el método ITaskFolder::RegisterTask devolverá el error 0x8000ffff cuando se registre la tarea.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows Vista [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows Server 2008 [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
taskschd.h |
biblioteca de |
Taskschd.lib |
DLL de |
Taskschd.dll |
Consulte también
programador de tareas de