建立工作時,您將使用兩個工作排程器介面:ITaskScheduler 和 ITask。 您必須提供工作的唯一名稱、工作對象的類別識別碼,以及ITask 介面識別碼。 類別標識碼和介面識別碼顯示在本主題後面的程式代碼範例中。
注意
您還可以透過呼叫 ITaskScheduler::AddWorkItem來新增一項任務。 當您採用此路由時,您必須負責建立 Task 對象的實例(其支援 ITask 介面),然後使用您提供的名稱新增工作。
注意
根據預設,只有系統管理員、備份作員或伺服器作員群組的成員可以在 Windows Server 2003 上建立工作。 Administrators 群組的成員可能會變更 Windows\Task 資料夾的安全性描述元,讓其他人建立工作。
您為工作提供的名稱在 [排程的任務] 資料夾中必須是唯一的。 如果具有相同名稱的工作已經存在,ITaskScheduler::NewWorkItem 會傳回ERROR_FILE_EXISTS。 如果您取得這個傳回值,您應該指定不同的名稱,並嘗試再次建立任務。
下列程序說明如何建立一個新的工作項目。
若要建立新的工作項目
- 呼叫 CoInitialize 來初始化 COM 連結庫,並 CoCreateInstance 以取得 Task Scheduler 物件。 (此範例假設工作排程器服務正在執行。)
- 呼叫 ITaskScheduler::NewWorkItem 以建立新的工作。 (這個方法會返回指向 ITask 介面的指標。)
- 呼叫 IPersistFile::Save,將新工作儲存至磁碟。 (IPersistFile 介面是 ITask 介面所支援的標準 COM 介面。
- 呼叫 ITask::Release 以釋放所有資源。 (請注意,Release 是 ITask繼承的 IUnknown 方法。
| 範例程式碼 | 看 |
|---|---|
| 建立單一任務 | C/C++ 程式代碼範例:使用 NewWorkItem 建立工作 |
相關主題