[[此 API 可能在操作系统或产品的后续版本中更改或不可用。 请改用 任务计划程序 2.0 接口 。] ]
AddWorkItem 方法将任务添加到任务计划。
语法
HRESULT AddWorkItem(
  [in] LPCWSTR            pwszTaskName,
  [in] IScheduledWorkItem *pWorkItem
);
参数
[in] pwszTaskName
以 null 结尾的字符串,指定要添加的任务的名称。 任务名称必须符合Windows NT文件命名约定,但不能包含反斜杠,因为不允许在任务文件夹对象中嵌套。
[in] pWorkItem
指向要添加到计划的任务的指针。
返回值
AddWorkItem 方法返回以下值之一。
| 返回代码 | 说明 | 
|---|---|
| 
 | 操作成功。 | 
| 
 | 具有指定名称的任务已存在。 实际返回值HRESULT_FROM_WIN32 (ERROR_FILE_EXISTS) 。 | 
| 
 | 一个或多个参数无效。 | 
| 
 | 没有足够的可用内存来完成该操作。 | 
注解
任务计划程序提供两种用于添加工作项的方法: NewWorkItem 和 AddWorkItem。 在这些方法中,每种方法都有其特定优势。 AddWorkItem 可防止命名冲突,但每次调用也需要两个磁盘写入操作。 当对 AddWorkItem 的调用在磁盘上创建一个空的工作项对象时,将执行一个写入操作,在调用 IPersistFile::Save 时执行另一个写入操作。
NewWorkItem 不会防止命名冲突,但在调用 IPersistFile::Save 时,它只需要一个磁盘写入操作。 尽管 NewWorkItem 的磁盘写入操作效率更高,但在调用 IPersistFile::Save 之前,应用程序仍存在让另一个应用程序创建同名工作项的风险。
要求
| 要求 | 值 | 
|---|---|
| 最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] | 
| 最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] | 
| 目标平台 | Windows | 
| 标头 | mstask.h | 
| Library | Mstask.lib | 
| DLL | Mstask.dll | 
| 可再发行组件 | Windows NT 4.0 和 Windows 95 上的 Internet Explorer 4.0 或更高版本 |