124 lines
3.9 KiB
C
124 lines
3.9 KiB
C
|
|
||
|
/******************************************************************************
|
||
|
|
||
|
Copyright(c) Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
ScheduledTasks.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This module contains the macros, user defined structures & function
|
||
|
definitions needed by ScheduledTasks.cpp , create.cpp , delete.cpp ,
|
||
|
query.cpp , createvalidations.cpp , change.cpp , run.cpp and end.cpp files.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
G.Surender Reddy 10-sept-2000
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
G.Surender Reddy 10-sept-2000 : Created it
|
||
|
G.Surender Reddy 25-sep-2000 : Modified it
|
||
|
[ Added macro constants,Function
|
||
|
definitions ]
|
||
|
Venu Gopal Choudary 01-Mar-2001 : Modified it
|
||
|
[ Added -change option]
|
||
|
|
||
|
Venu Gopal Choudary 12-Mar-2001 : Modified it
|
||
|
[ Added -run and -end options]
|
||
|
|
||
|
******************************************************************************/
|
||
|
|
||
|
#ifndef __SCHEDULEDTASKS_H
|
||
|
#define __SCHEDULEDTASKS_H
|
||
|
|
||
|
#pragma once // include header file only once
|
||
|
|
||
|
// constants / defines / enumerations
|
||
|
|
||
|
// Options
|
||
|
#define CMDOPTION_CREATE _T( "create" )
|
||
|
#define CMDOPTION_DELETE _T( "delete" )
|
||
|
#define CMDOPTION_QUERY _T( "query" )
|
||
|
#define CMDOPTION_CHANGE _T( "change" )
|
||
|
#define CMDOPTION_RUN _T( "run" )
|
||
|
#define CMDOPTION_END _T( "end" )
|
||
|
#define CMDOPTION_USAGE _T( "?|help|h" )
|
||
|
|
||
|
#define CMDOTHEROPTIONS _T( "s|ru|rp|f|sc|mo|d|m|i|tn|tr|st|sd|ed|fo|v|nh|u|p")
|
||
|
|
||
|
|
||
|
// Other switches or sub-options
|
||
|
#define SWITCH_SERVER _T( "s" )
|
||
|
#define SWITCH_RUNAS_USER _T( "ru" )
|
||
|
#define SWITCH_RUNAS_PASSWORD _T( "rp" )
|
||
|
#define SWITCH_USER _T( "u" )
|
||
|
#define SWITCH_PASSWORD _T( "p" )
|
||
|
#define SWITCH_FORMAT _T( "fo" )
|
||
|
#define SWITCH_VERBOSE _T( "v")
|
||
|
#define SWITCH_FORCE _T( "f" )
|
||
|
#define SWITCH_SCHEDULETYPE _T( "sc" )
|
||
|
#define SWITCH_MODIFIER _T( "mo" )
|
||
|
#define SWITCH_DAY _T( "d" )
|
||
|
#define SWITCH_MONTHS _T( "m" )
|
||
|
#define SWITCH_IDLETIME _T( "i" )
|
||
|
#define SWITCH_TASKNAME _T( "tn" )
|
||
|
#define SWITCH_TASKRUN _T( "tr" )
|
||
|
#define SWITCH_STARTTIME _T( "st" )
|
||
|
#define SWITCH_STARTDATE _T( "sd" )
|
||
|
#define SWITCH_ENDDATE _T( "ed" )
|
||
|
#define SWITCH_NOHEADER _T( "nh" )
|
||
|
|
||
|
// Other constants
|
||
|
|
||
|
//To retrive 1 tasks at a time ,used in TaskScheduler API fns.
|
||
|
#define TASKS_TO_RETRIEVE 1
|
||
|
#define TRIM_SPACES TEXT(" \0")
|
||
|
|
||
|
#define NTAUTHORITY_USER _T("NT AUTHORITY\\SYSTEM")
|
||
|
#define SYSTEM_USER _T("SYSTEM")
|
||
|
|
||
|
// Exit values
|
||
|
#define EXIT_SUCCESS 0
|
||
|
#define EXIT_FAILURE 1
|
||
|
|
||
|
|
||
|
#define DOMAIN_U_STRING L"\\\\"
|
||
|
#define NULL_U_STRING L""
|
||
|
#define NULL_U_CHAR L'\0'
|
||
|
#define BACK_SLASH_U L'\\'
|
||
|
|
||
|
#define JOB _T(".job")
|
||
|
|
||
|
#define MAX_MESSAGE_LEN 2056
|
||
|
#define NULL_U_CHAR L'\0'
|
||
|
#define MAX_PASSWORD_LEN 64
|
||
|
|
||
|
#define COMMA_STRING _T(",")
|
||
|
#define TEMP_LOG_FILE _T("StdIn.log")
|
||
|
|
||
|
// Typedefs of standard string sizes
|
||
|
//typedef TCHAR STRING32 [ 32 ];
|
||
|
//typedef TCHAR STRING64 [ 64 ];
|
||
|
typedef TCHAR STRING100 [ 100 ];
|
||
|
typedef TCHAR STRING256 [ 256 ];
|
||
|
|
||
|
// Main functions
|
||
|
HRESULT CreateScheduledTask( DWORD argc , LPCTSTR argv[] );
|
||
|
DWORD DeleteScheduledTask( DWORD argc , LPCTSTR argv[] );
|
||
|
DWORD QueryScheduledTasks( DWORD argc , LPCTSTR argv[] );
|
||
|
DWORD ChangeScheduledTaskParams( DWORD argc , LPCTSTR argv[] );
|
||
|
DWORD RunScheduledTask( DWORD argc , LPCTSTR argv[] );
|
||
|
DWORD TerminateScheduledTask( DWORD argc , LPCTSTR argv[] );
|
||
|
|
||
|
VOID Cleanup( ITaskScheduler *pITaskScheduler);
|
||
|
ITaskScheduler* GetTaskScheduler( LPCTSTR pszServerName );
|
||
|
TARRAY ValidateAndGetTasks( ITaskScheduler * pITaskScheduler, LPCTSTR pszTaskName);
|
||
|
DWORD ParseTaskName( LPTSTR lpszTaskName );
|
||
|
void DisplayErrorMsg(HRESULT hr);
|
||
|
DWORD DisplayUsage( ULONG StartingMessage, ULONG EndingMessage );
|
||
|
|
||
|
#endif // __SCHEDULEDTASKS_H
|