unit insjob;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;type
TAT_INFO = record
JobTime: DWord;
DaysOfMonth: DWord;
DaysOfWeek: UCHAR;
Flags: UCHAR;
Command: PWideChar;
end; PAT_INFO = ^TAT_INFO;
NET_API_STATUS = LongInt; TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;function NetScheduleJobAdd(ServerName: PWideChar; Buffer: PAT_INFO; var JobID: PDWord): NET_API_STATUS;stdcall;var
Form1: TForm1;implementation
{$R *.DFM}
function NetScheduleJobAdd; external 'netapi32.dll' name 'NetScheduleJobAdd';procedure TForm1.Button1Click(Sender: TObject);
var
ATInfo:PAT_Info;
jobid:PDword;
begin
(*这段程序是向"计划任务"添加一个每天3:15运行的任务*)
getmem(atinfo,sizeof(TAt_info)); //分配内存
getmem(jobid,sizeof(dword)); //分配内存
atinfo^.jobtime:=3*60*60*1000+15*60*1000;//3:15,从0:00开始的毫秒数.
atinfo^.DaysOfMonth:=4294967295;//每月的第$FFFFFFFF天,表示是每天
atinfo^.DaysOfWeek:=255;//每周的第$FF天,表示每天
atinfo^.command:='c:\showok.exe';//任务内容,执行程序 c:\showok.exe
atinfo^.flags:=1;//JOB_RUN_PERIODICALLY,任务运行后不会被自动删除,不是一次性任务.
if NetScheduleJobAdd(nil,atinfo,jobid)<>2 then //添加任务.
showmessage('ok');
freemem(jobid);
freemem(atinfo);
end;end.
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;type
TAT_INFO = record
JobTime: DWord;
DaysOfMonth: DWord;
DaysOfWeek: UCHAR;
Flags: UCHAR;
Command: PWideChar;
end; PAT_INFO = ^TAT_INFO;
NET_API_STATUS = LongInt; TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;function NetScheduleJobAdd(ServerName: PWideChar; Buffer: PAT_INFO; var JobID: PDWord): NET_API_STATUS;stdcall;var
Form1: TForm1;implementation
{$R *.DFM}
function NetScheduleJobAdd; external 'netapi32.dll' name 'NetScheduleJobAdd';procedure TForm1.Button1Click(Sender: TObject);
var
ATInfo:PAT_Info;
jobid:PDword;
begin
(*这段程序是向"计划任务"添加一个每天3:15运行的任务*)
getmem(atinfo,sizeof(TAt_info)); //分配内存
getmem(jobid,sizeof(dword)); //分配内存
atinfo^.jobtime:=3*60*60*1000+15*60*1000;//3:15,从0:00开始的毫秒数.
atinfo^.DaysOfMonth:=4294967295;//每月的第$FFFFFFFF天,表示是每天
atinfo^.DaysOfWeek:=255;//每周的第$FF天,表示每天
atinfo^.command:='c:\showok.exe';//任务内容,执行程序 c:\showok.exe
atinfo^.flags:=1;//JOB_RUN_PERIODICALLY,任务运行后不会被自动删除,不是一次性任务.
if NetScheduleJobAdd(nil,atinfo,jobid)<>2 then //添加任务.
showmessage('ok');
freemem(jobid);
freemem(atinfo);
end;end.
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;type
TAT_INFO = record
JobTime: DWord;
DaysOfMonth: DWord;
DaysOfWeek: UCHAR;
Flags: UCHAR;
Command: PWideChar;
end; PAT_INFO = ^TAT_INFO;
NET_API_STATUS = LongInt; TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;function NetScheduleJobAdd(ServerName: PWideChar; Buffer: PAT_INFO; var JobID: PDWord): NET_API_STATUS;stdcall;var
Form1: TForm1;implementation
{$R *.DFM}
function NetScheduleJobAdd; external 'netapi32.dll' name 'NetScheduleJobAdd';procedure TForm1.Button1Click(Sender: TObject);
var
ATInfo:PAT_Info;
jobid:PDword;
begin
(*这段程序是向"计划任务"添加一个每天3:15运行的任务*)
getmem(atinfo,sizeof(TAt_info)); //分配内存
getmem(jobid,sizeof(dword)); //分配内存
atinfo^.jobtime:=3*60*60*1000+15*60*1000;//3:15,从0:00开始的毫秒数.
atinfo^.DaysOfMonth:=4294967295;//每月的第$FFFFFFFF天,表示是每天
atinfo^.DaysOfWeek:=255;//每周的第$FF天,表示每天
atinfo^.command:='c:\showok.exe';//任务内容,执行程序 c:\showok.exe
atinfo^.flags:=1;//JOB_RUN_PERIODICALLY,任务运行后不会被自动删除,不是一次性任务.
if NetScheduleJobAdd(nil,atinfo,jobid)<>2 then //添加任务.
showmessage('ok');
freemem(jobid);
freemem(atinfo);
end;end.
atinfo^.DaysOfMonth中从第0位到第30位分别表示每月第一天到第三十一天.$FFFFFFFF把所有位都置为1,则表示每一天.atinfo^.DaysOfWeek的含义相似.
我要怎么写呢