Compartir a través de


Método IRegisteredTask::RunEx (taskschd.h)

Ejecuta la tarea registrada inmediatamente mediante marcas especificadas y un identificador de sesión.

Sintaxis

HRESULT RunEx(
  [in]            VARIANT      params,
  [in]            LONG         flags,
  [in]            LONG         sessionID,
  [in]            BSTR         user,
  [out, optional] IRunningTask **ppRunningTask
);

Parámetros

[in] params

Los parámetros usados como valores en las acciones de tarea. Para no especificar ningún valor de parámetro para las acciones de tarea, establezca este parámetro en VT_NULL o VT_EMPTY. De lo contrario, se puede especificar una sola valor de BSTR o una matriz de valores de BSTR.

Los valores de BSTR que especifique se emparejan con nombres y se almacenan como pares nombre-valor. Si especifica un valor BSTR único, Arg0 será el nombre asignado al valor. El valor se puede usar en la acción de tarea donde se usa la variable $(Arg0) en las propiedades de la acción.

Si pasa valores como "0", "100" y "250" como una matriz de valores de BSTR, "0" reemplazará las variables $(Arg0), "100" reemplazará las variables $(Arg1) y "250" reemplazará las variables $(Arg2) que se usan en las propiedades de acción.

Se puede especificar un máximo de 32 valores de BSTR.

Para obtener más información y una lista de propiedades de acción que pueden usar $(Arg0), $(Arg1), ..., $(Arg32) variables en sus valores, vea Task Actions.

[in] flags

Constante TASK_RUN_FLAGS que define cómo se ejecuta la tarea.

[in] sessionID

Sesión de terminal server en la que desea iniciar la tarea.

Si la constante TASK_RUN_USE_SESSION_ID no se pasa a las marcas de parámetro, se omite el valor especificado en este parámetro. Si la constante TASK_RUN_USE_SESSION_ID se pasa a las marcas parámetro y el valor sessionID es menor o igual que 0, se devolverá un error de argumento no válido.

Si la constante TASK_RUN_USE_SESSION_ID se pasa al parámetro marcas y el valor sessionID es un identificador de sesión válido mayor que 0 y, si no se especifica ningún valor para el parámetro usuario , el servicio Programador de tareas intentará iniciar la tarea de forma interactiva como el usuario que inició sesión en la sesión especificada.

Si la constante TASK_RUN_USE_SESSION_ID se pasa al parámetro marcas y el valor sessionID es un identificador de sesión válido mayor que 0 y si se especifica un usuario en el parámetro usuario, el servicio Programador de tareas intentará iniciar la tarea de forma interactiva como el usuario que se especifica en el parámetro usuario de .

[in] user

Usuario para el que se ejecuta la tarea.

[out, optional] ppRunningTask

Interfaz IRunningTask que define la nueva instancia de la tarea.

Pase una referencia a un puntero de interfazIRunningTask NULL. Hacer referencia a un puntero null nopuede provocar una pérdida de memoria porque se sobrescribirá el puntero.

Valor devuelto

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un hrESULT código de error.

Observaciones

Este método devolverá sin error, pero la tarea no se ejecutará si la propiedad AllowDemandStart de ITaskSettings está establecida en false para la tarea.

Si IRegisteredTask::RunEx se invoca desde una tarea deshabilitada, devolverá S_OK, pero la tarea no se ejecutará.

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

IRegisteredTask

programador de tareas de