1
|
1 /***********************************************************************\
|
|
2 * lmat.d *
|
|
3 * *
|
|
4 * Windows API header module *
|
|
5 * *
|
|
6 * Translated from MinGW Windows headers *
|
|
7 * *
|
|
8 * Placed into public domain *
|
|
9 \***********************************************************************/
|
|
10 module win32.lmat;
|
|
11 pragma(lib, "netapi32.lib");
|
|
12
|
|
13 private import win32.lmcons, win32.windef;
|
|
14
|
|
15 const JOB_RUN_PERIODICALLY = 1;
|
|
16 const JOB_EXEC_ERROR = 2;
|
|
17 const JOB_RUNS_TODAY = 4;
|
|
18 const JOB_ADD_CURRENT_DATE = 8;
|
|
19 const JOB_NONINTERACTIVE = 16;
|
|
20 const JOB_INPUT_FLAGS = JOB_RUN_PERIODICALLY | JOB_ADD_CURRENT_DATE
|
|
21 | JOB_NONINTERACTIVE;
|
|
22 const JOB_OUTPUT_FLAGS = JOB_RUN_PERIODICALLY | JOB_EXEC_ERROR
|
|
23 | JOB_RUNS_TODAY | JOB_NONINTERACTIVE;
|
|
24
|
|
25 struct AT_ENUM {
|
|
26 DWORD JobId;
|
|
27 DWORD JobTime;
|
|
28 DWORD DaysOfMonth;
|
|
29 UCHAR DaysOfWeek;
|
|
30 UCHAR Flags;
|
|
31 LPWSTR Command;
|
|
32 }
|
|
33 alias AT_ENUM* PAT_ENUM, LPAT_ENUM;
|
|
34
|
|
35 struct AT_INFO {
|
|
36 DWORD JobTime;
|
|
37 DWORD DaysOfMonth;
|
|
38 UCHAR DaysOfWeek;
|
|
39 UCHAR Flags;
|
|
40 LPWSTR Command;
|
|
41 }
|
|
42 alias AT_INFO* PAT_INFO, LPAT_INFO;
|
|
43
|
|
44 extern (Windows) {
|
|
45 NET_API_STATUS NetScheduleJobAdd(LPWSTR, PBYTE, LPDWORD);
|
|
46 NET_API_STATUS NetScheduleJobDel(LPWSTR, DWORD, DWORD);
|
|
47 NET_API_STATUS NetScheduleJobEnum(LPWSTR, PBYTE*, DWORD, PDWORD, PDWORD,
|
|
48 PDWORD);
|
|
49 NET_API_STATUS NetScheduleJobGetInfo(LPWSTR, DWORD, PBYTE*);
|
|
50 }
|