IRegisteredTask::RunEx 方法 (taskschd.h)
使用指定的旗標和會話標識碼,立即執行已註冊的工作。
語法
HRESULT RunEx(
[in] VARIANT params,
[in] LONG flags,
[in] LONG sessionID,
[in] BSTR user,
[out, optional] IRunningTask **ppRunningTask
);
參數
[in] params
做為工作動作中值的參數。 若要不指定工作動作的任何參數值,請將此參數設定為 VT_NULL 或 VT_EMPTY。 否則,可以指定單一 BSTR 值,或 BSTR 值的陣列。
您指定的 BSTR 值會與名稱配對,並儲存為名稱/值組。 如果您指定單一 BSTR 值,則 Arg0 將會是指派給值的名稱。 值可用於動作屬性中使用 $(Arg0) 變數的工作動作。
如果您將 “0”、“100” 和 “250” 等值傳入為 BSTR 值的陣列,則 “0” 會取代 $(Arg0) 變數,“100” 會取代 $(Arg1) 變數,而 “250” 會取代動作屬性中使用的 $(Arg2) 變數。
最多可以指定 32 BSTR 值。
如需可以使用 $(Arg0)、$(Arg1)、...、$(Arg32) 變數值的詳細資訊和動作屬性清單,請參閱 工作動作。
[in] flags
定義工作執行方式的 TASK_RUN_FLAGS 常數。
[in] sessionID
您要在其中啟動工作的終端機伺服器會話。
如果TASK_RUN_USE_SESSION_ID常數未傳遞至 旗標 參數,則會忽略此參數中指定的值。 如果TASK_RUN_USE_SESSION_ID常數傳入 旗標 參數,且 sessionID 值小於或等於 0,則會傳回無效的自變數錯誤。
如果 TASK_RUN_USE_SESSION_ID 常數會傳遞至 旗標 參數,而 sessionID 值是有效的會話標識符大於 0,而且如果 使用者 參數未指定任何值,則工作排程器服務會嘗試以互動方式啟動工作,作為登入指定會話的使用者。
如果 TASK_RUN_USE_SESSION_ID 常數傳遞至 旗標 參數,而 sessionID 值是有效的會話標識符大於 0,而且如果使用者在 使用者 參數中指定,則工作排程器服務會嘗試以互動方式啟動工作,作為 使用者 參數中指定的使用者。
[in] user
工作執行的使用者。
[out, optional] ppRunningTask
定義工作新實例的 IRunningTask 介面。
將參考傳遞至 NULLIRunningTask 介面指標。 參考非NULL 指標可能會導致記憶體流失,因為將會覆寫指標。
傳回值
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
言論
這個方法會傳回而不會發生錯誤,但如果工作 ITaskSettings 的 AllowDemandStart 屬性設定為 false,工作將不會執行。
如果從停用的工作叫用 IRegisteredTask::RunEx,則會傳回S_OK,但不會執行工作。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | taskschd.h |
連結庫 | Taskschd.lib |
DLL | Taskschd.dll |