/*++ BUILD Version: 0006 // Increment this if a change has global effects Copyright (c) 1992-1999 Microsoft Corporation Module Name: lmat.h Abstract: This file contains structures, function prototypes, and definitions for the schedule service API-s. Environment: User Mode - Win32 Portable to any flat, 32-bit environment. (Uses Win32 typedefs.) Requires ANSI C extensions: slash-slash comments, long external names. Notes: You must include NETCONS.H before this file, since this file depends on values defined in NETCONS.H. Revision History: --*/ #ifndef _LMAT_ #define _LMAT_ #if _MSC_VER > 1000 #pragma once #endif #ifdef __cplusplus extern "C" { #endif // // The following bits are used with Flags field in structures below. // // // Do we exec programs for this job periodically (/EVERY switch) // or one time (/NEXT switch). // #define JOB_RUN_PERIODICALLY 0x01 // set if EVERY // // Was there an error last time we tried to exec a program on behalf of // this job. // This flag is meaningfull on output only! // #define JOB_EXEC_ERROR 0x02 // set if error // // Will this job run today or tomorrow. // This flag is meaningfull on output only! // #define JOB_RUNS_TODAY 0x04 // set if today // // Add current day of the month to DaysOfMonth input. // This flag is meaningfull on input only! // #define JOB_ADD_CURRENT_DATE 0x08 // set if to add current date // // Will this job be run interactively or not. Windows NT 3.1 do not // know about this bit, i.e. they submit interactive jobs only. // #define JOB_NONINTERACTIVE 0x10 // set for noninteractive #define JOB_INPUT_FLAGS ( JOB_RUN_PERIODICALLY | \ JOB_ADD_CURRENT_DATE | \ JOB_NONINTERACTIVE ) #define JOB_OUTPUT_FLAGS ( JOB_RUN_PERIODICALLY | \ JOB_EXEC_ERROR | \ JOB_RUNS_TODAY | \ JOB_NONINTERACTIVE ) typedef struct _AT_INFO { DWORD_PTR JobTime; DWORD DaysOfMonth; UCHAR DaysOfWeek; UCHAR Flags; LPWSTR Command; } AT_INFO, *PAT_INFO, *LPAT_INFO; typedef struct _AT_ENUM { DWORD JobId; DWORD_PTR JobTime; DWORD DaysOfMonth; UCHAR DaysOfWeek; UCHAR Flags; LPWSTR Command; } AT_ENUM, *PAT_ENUM, *LPAT_ENUM; NET_API_STATUS NET_API_FUNCTION NetScheduleJobAdd( IN LPCWSTR Servername OPTIONAL, IN LPBYTE Buffer, OUT LPDWORD JobId ); NET_API_STATUS NET_API_FUNCTION NetScheduleJobDel( IN LPCWSTR Servername OPTIONAL, IN DWORD MinJobId, IN DWORD MaxJobId ); NET_API_STATUS NET_API_FUNCTION NetScheduleJobEnum( IN LPCWSTR Servername OPTIONAL, OUT LPBYTE * PointerToBuffer, IN DWORD PrefferedMaximumLength, OUT LPDWORD EntriesRead, OUT LPDWORD TotalEntries, IN OUT LPDWORD ResumeHandle ); NET_API_STATUS NET_API_FUNCTION NetScheduleJobGetInfo( IN LPCWSTR Servername OPTIONAL, IN DWORD JobId, OUT LPBYTE * PointerToBuffer ); #ifdef __cplusplus } #endif #endif // _LMAT_