Hex Artifact Content

Not logged in

Artifact c09edf3182df2a763d4a5f691d104957bbc80415:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20  ********\..*    
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0060: 20 20 20 20 20 20 20 20 20 20 20 20 6c 6d 61 74              lmat
0070: 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .d              
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20     *..*         
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d                *.
00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .*              
00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73           Windows
0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75   API header modu
0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20  le              
0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20           *..*   
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20      *..*        
0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61           Transla
0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57  ted from MinGW W
01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20  indows headers  
01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a                 *
01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20  ..*             
01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20            *..*  
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0220: 20 20 20 20 20 50 6c 61 63 65 64 20 69 6e 74 6f       Placed into
0230: 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 20 20   public domain  
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0250: 20 20 20 20 20 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a       *..\*******
0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02a0: 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e  /..module win32.
02b0: 6c 6d 61 74 3b 0d 0a 70 72 61 67 6d 61 28 6c 69  lmat;..pragma(li
02c0: 62 2c 20 22 6e 65 74 61 70 69 33 32 22 29 3b 0d  b, "netapi32");.
02d0: 0a 0d 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72  ...private impor
02e0: 74 20 77 69 6e 33 32 2e 6c 6d 63 6f 6e 73 2c 20  t win32.lmcons, 
02f0: 77 69 6e 33 32 2e 77 69 6e 64 65 66 3b 0d 0a 0d  win32.windef;...
0300: 0a 63 6f 6e 73 74 20 4a 4f 42 5f 52 55 4e 5f 50  .const JOB_RUN_P
0310: 45 52 49 4f 44 49 43 41 4c 4c 59 20 3d 20 31 3b  ERIODICALLY = 1;
0320: 0d 0a 63 6f 6e 73 74 20 4a 4f 42 5f 45 58 45 43  ..const JOB_EXEC
0330: 5f 45 52 52 4f 52 20 20 20 20 20 20 20 3d 20 32  _ERROR       = 2
0340: 3b 0d 0a 63 6f 6e 73 74 20 4a 4f 42 5f 52 55 4e  ;..const JOB_RUN
0350: 53 5f 54 4f 44 41 59 20 20 20 20 20 20 20 3d 20  S_TODAY       = 
0360: 34 3b 0d 0a 63 6f 6e 73 74 20 4a 4f 42 5f 41 44  4;..const JOB_AD
0370: 44 5f 43 55 52 52 45 4e 54 5f 44 41 54 45 20 3d  D_CURRENT_DATE =
0380: 20 38 3b 0d 0a 63 6f 6e 73 74 20 4a 4f 42 5f 4e   8;..const JOB_N
0390: 4f 4e 49 4e 54 45 52 41 43 54 49 56 45 20 20 20  ONINTERACTIVE   
03a0: 3d 20 31 36 3b 0d 0a 63 6f 6e 73 74 20 4a 4f 42  = 16;..const JOB
03b0: 5f 49 4e 50 55 54 5f 46 4c 41 47 53 20 20 20 20  _INPUT_FLAGS    
03c0: 20 20 3d 20 4a 4f 42 5f 52 55 4e 5f 50 45 52 49    = JOB_RUN_PERI
03d0: 4f 44 49 43 41 4c 4c 59 20 7c 20 4a 4f 42 5f 41  ODICALLY | JOB_A
03e0: 44 44 5f 43 55 52 52 45 4e 54 5f 44 41 54 45 0d  DD_CURRENT_DATE.
03f0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20                | 
0410: 4a 4f 42 5f 4e 4f 4e 49 4e 54 45 52 41 43 54 49  JOB_NONINTERACTI
0420: 56 45 3b 0d 0a 63 6f 6e 73 74 20 4a 4f 42 5f 4f  VE;..const JOB_O
0430: 55 54 50 55 54 5f 46 4c 41 47 53 20 20 20 20 20  UTPUT_FLAGS     
0440: 3d 20 4a 4f 42 5f 52 55 4e 5f 50 45 52 49 4f 44  = JOB_RUN_PERIOD
0450: 49 43 41 4c 4c 59 20 7c 20 4a 4f 42 5f 45 58 45  ICALLY | JOB_EXE
0460: 43 5f 45 52 52 4f 52 0d 0a 20 20 20 20 20 20 20  C_ERROR..       
0470: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0480: 20 20 20 20 20 20 7c 20 4a 4f 42 5f 52 55 4e 53        | JOB_RUNS
0490: 5f 54 4f 44 41 59 20 7c 20 4a 4f 42 5f 4e 4f 4e  _TODAY | JOB_NON
04a0: 49 4e 54 45 52 41 43 54 49 56 45 3b 0d 0a 0d 0a  INTERACTIVE;....
04b0: 73 74 72 75 63 74 20 41 54 5f 45 4e 55 4d 20 7b  struct AT_ENUM {
04c0: 0d 0a 09 44 57 4f 52 44 20 4a 6f 62 49 64 3b 0d  ...DWORD JobId;.
04d0: 0a 09 44 57 4f 52 44 20 4a 6f 62 54 69 6d 65 3b  ..DWORD JobTime;
04e0: 0d 0a 09 44 57 4f 52 44 20 44 61 79 73 4f 66 4d  ...DWORD DaysOfM
04f0: 6f 6e 74 68 3b 0d 0a 09 55 43 48 41 52 20 44 61  onth;...UCHAR Da
0500: 79 73 4f 66 57 65 65 6b 3b 0d 0a 09 55 43 48 41  ysOfWeek;...UCHA
0510: 52 20 46 6c 61 67 73 3b 0d 0a 09 4c 50 57 53 54  R Flags;...LPWST
0520: 52 20 43 6f 6d 6d 61 6e 64 3b 0d 0a 7d 0d 0a 61  R Command;..}..a
0530: 6c 69 61 73 20 41 54 5f 45 4e 55 4d 2a 20 50 41  lias AT_ENUM* PA
0540: 54 5f 45 4e 55 4d 2c 20 4c 50 41 54 5f 45 4e 55  T_ENUM, LPAT_ENU
0550: 4d 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 41 54 5f  M;....struct AT_
0560: 49 4e 46 4f 20 7b 0d 0a 09 44 57 4f 52 44 20 4a  INFO {...DWORD J
0570: 6f 62 54 69 6d 65 3b 0d 0a 09 44 57 4f 52 44 20  obTime;...DWORD 
0580: 44 61 79 73 4f 66 4d 6f 6e 74 68 3b 0d 0a 09 55  DaysOfMonth;...U
0590: 43 48 41 52 20 44 61 79 73 4f 66 57 65 65 6b 3b  CHAR DaysOfWeek;
05a0: 0d 0a 09 55 43 48 41 52 20 46 6c 61 67 73 3b 0d  ...UCHAR Flags;.
05b0: 0a 09 4c 50 57 53 54 52 20 43 6f 6d 6d 61 6e 64  ..LPWSTR Command
05c0: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 41 54 5f 49  ;..}..alias AT_I
05d0: 4e 46 4f 2a 20 50 41 54 5f 49 4e 46 4f 2c 20 4c  NFO* PAT_INFO, L
05e0: 50 41 54 5f 49 4e 46 4f 3b 0d 0a 0d 0a 65 78 74  PAT_INFO;....ext
05f0: 65 72 6e 20 28 57 69 6e 64 6f 77 73 29 20 7b 0d  ern (Windows) {.
0600: 0a 09 4e 45 54 5f 41 50 49 5f 53 54 41 54 55 53  ..NET_API_STATUS
0610: 20 4e 65 74 53 63 68 65 64 75 6c 65 4a 6f 62 41   NetScheduleJobA
0620: 64 64 28 4c 50 57 53 54 52 2c 20 50 42 59 54 45  dd(LPWSTR, PBYTE
0630: 2c 20 4c 50 44 57 4f 52 44 29 3b 0d 0a 09 4e 45  , LPDWORD);...NE
0640: 54 5f 41 50 49 5f 53 54 41 54 55 53 20 4e 65 74  T_API_STATUS Net
0650: 53 63 68 65 64 75 6c 65 4a 6f 62 44 65 6c 28 4c  ScheduleJobDel(L
0660: 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 44 57  PWSTR, DWORD, DW
0670: 4f 52 44 29 3b 0d 0a 09 4e 45 54 5f 41 50 49 5f  ORD);...NET_API_
0680: 53 54 41 54 55 53 20 4e 65 74 53 63 68 65 64 75  STATUS NetSchedu
0690: 6c 65 4a 6f 62 45 6e 75 6d 28 4c 50 57 53 54 52  leJobEnum(LPWSTR
06a0: 2c 20 50 42 59 54 45 2a 2c 20 44 57 4f 52 44 2c  , PBYTE*, DWORD,
06b0: 20 50 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c   PDWORD, PDWORD,
06c0: 0d 0a 09 20 20 50 44 57 4f 52 44 29 3b 0d 0a 09  ...  PDWORD);...
06d0: 4e 45 54 5f 41 50 49 5f 53 54 41 54 55 53 20 4e  NET_API_STATUS N
06e0: 65 74 53 63 68 65 64 75 6c 65 4a 6f 62 47 65 74  etScheduleJobGet
06f0: 49 6e 66 6f 28 4c 50 57 53 54 52 2c 20 44 57 4f  Info(LPWSTR, DWO
0700: 52 44 2c 20 50 42 59 54 45 2a 29 3b 0d 0a 7d 0d  RD, PBYTE*);..}.
0710: 0a                                               .