Freigeben über


IRegisteredTask::RunEx-Methode (taskschd.h)

Führt die registrierte Aufgabe sofort mit angegebenen Flags und einem Sitzungsbezeichner aus.

Syntax

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

Parameter

[in] params

Die Parameter, die als Werte in den Aufgabenaktionen verwendet werden. Wenn Sie keine Parameterwerte für die Aufgabenaktionen angeben möchten, legen Sie diesen Parameter auf VT_NULL oder VT_EMPTYfest. Andernfalls kann ein einzelner BSTR--Wert oder ein Array von BSTR--Werten angegeben werden.

Die BSTR- Werte, die Sie angeben, werden mit Namen gekoppelt und als Name-Wert-Paare gespeichert. Wenn Sie einen einzelnen BSTR-Wert angeben, ist Arg0 der Name, der dem Wert zugewiesen ist. Der Wert kann in der Aufgabenaktion verwendet werden, in der die Variable $(Arg0) in den Aktionseigenschaften verwendet wird.

Wenn Sie Werte wie "0", "100" und "250" als Array von BSTR- Werten übergeben, ersetzt "0" die Variablen "$(Arg0)," "100" die Variablen "$(Arg1)", und "250" ersetzt die Variablen "$(Arg2)," die in den Aktionseigenschaften verwendeten Variablen.If you pass in values such as "$(0", "100" and "250" will replace the $(Arg2) variables that are used in the action properties.

Es können maximal 32 BSTR- Werte angegeben werden.

Weitere Informationen und eine Liste der Aktionseigenschaften, die $(Arg0), $(Arg1), ..., $(Arg32)-Variablen in ihren Werten verwenden können, finden Sie unter Aufgabenaktionen.

[in] flags

Eine TASK_RUN_FLAGS Konstante, die definiert, wie die Aufgabe ausgeführt wird.

[in] sessionID

Die Terminalserversitzung, in der Sie die Aufgabe starten möchten.

Wenn die TASK_RUN_USE_SESSION_ID Konstante nicht an die Flags Parameter übergeben wird, wird der in diesem Parameter angegebene Wert ignoriert. Wenn die TASK_RUN_USE_SESSION_ID Konstante an die Flags Parameter übergeben wird und der SessionID-Wert kleiner oder gleich 0 ist, wird ein ungültiger Argumentfehler zurückgegeben.

Wenn die TASK_RUN_USE_SESSION_ID Konstante an die Flags Parameter übergeben wird und der SessionID-Wert eine gültige Sitzungs-ID größer als 0 ist und kein Wert für den parameter Benutzer angegeben wird, versucht der Task Scheduler-Dienst, die Aufgabe interaktiv als Benutzer zu starten, der bei der angegebenen Sitzung angemeldet ist.

Wenn die TASK_RUN_USE_SESSION_ID Konstante an die Flags Parameter übergeben wird und der SessionID-Wert eine gültige Sitzungs-ID größer als 0 ist und ein Benutzer im parameter benutzer angegeben ist, versucht der Task Scheduler-Dienst, die Aufgabe interaktiv als Benutzer zu starten, der im Benutzer Parameter angegeben ist.

[in] user

Der Benutzer, für den die Aufgabe ausgeführt wird.

[out, optional] ppRunningTask

Eine IRunningTask- Schnittstelle, die die neue Instanz der Aufgabe definiert.

Übergeben Sie einen Verweis auf einen NULL-IRunningTask Schnittstellenzeiger. Das Verweisen auf einen Nicht-NULL- Zeiger kann zu einem Speicherverlust führen, da der Zeiger überschrieben wird.

Rückgabewert

Wenn diese Methode erfolgreich ist, wird S_OKzurückgegeben. Andernfalls wird ein HRESULT- Fehlercode zurückgegeben.

Bemerkungen

Diese Methode wird ohne Fehler zurückgegeben, aber die Aufgabe wird nicht ausgeführt, wenn die AllowDemandStart- Eigenschaft von ITaskSettings für den Vorgang auf "false" festgelegt ist.

Wenn IRegisteredTask::RunEx von einer deaktivierten Aufgabe aufgerufen wird, wird S_OK zurückgegeben, die Aufgabe wird jedoch nicht ausgeführt.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2008 [Nur Desktop-Apps]
Zielplattform- Fenster
Header- taskschd.h
Library Taskschd.lib
DLL- Taskschd.dll

Siehe auch

IRegisteredTask-

Aufgabenplaner-