2010 lines
93 KiB
ObjectPascal
2010 lines
93 KiB
ObjectPascal
{*******************************************************}
|
|
{ MiTeC Common Routines }
|
|
{ Task Scheduler interface }
|
|
{ }
|
|
{ }
|
|
{ Copyright (c) 1997-2021 Michal Mutl }
|
|
{ }
|
|
{*******************************************************}
|
|
|
|
{$INCLUDE Compilers.inc}
|
|
|
|
unit MiTeC_TaskScheduler_TLB;
|
|
|
|
// ************************************************************************ //
|
|
// WARNING
|
|
// -------
|
|
// The types declared in this file were generated from data read from a
|
|
// Type Library. If this type library is explicitly or indirectly (via
|
|
// another type library referring to this type library) re-imported, or the
|
|
// 'Refresh' command of the Type Library Editor activated while editing the
|
|
// Type Library, the contents of this file will be regenerated and all
|
|
// manual modifications will be lost.
|
|
// ************************************************************************ //
|
|
|
|
// $Rev: 17244 $
|
|
// File generated on 29.4.2017 19:11:10 from Type Library described below.
|
|
|
|
// ************************************************************************ //
|
|
// Type Lib: C:\Windows\SysWOW64\taskschd.dll (1)
|
|
// LIBID: {E34CB9F1-C7F7-424C-BE29-027DCC09363A}
|
|
// LCID: 0
|
|
// Helpfile:
|
|
// HelpString:
|
|
// DepndLst:
|
|
// (1) v2.0 stdole, (C:\Windows\SysWOW64\stdole2.tlb)
|
|
// Errors:
|
|
// Hint: TypeInfo 'TaskScheduler' changed to 'TaskScheduler_'
|
|
// Hint: Parameter 'Type' of ITriggerCollection.Create changed to 'Type_'
|
|
// Hint: Symbol 'Type' renamed to 'type_'
|
|
// Hint: Parameter 'Type' of IActionCollection.Create changed to 'Type_'
|
|
// Hint: Symbol 'Type' renamed to 'type_'
|
|
// Hint: Member 'To' of 'IEmailAction' changed to 'To_'
|
|
// ************************************************************************ //
|
|
{$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers.
|
|
{$WARN SYMBOL_PLATFORM OFF}
|
|
{$WRITEABLECONST ON}
|
|
{$VARPROPSETTER ON}
|
|
{$ALIGN 4}
|
|
interface
|
|
|
|
uses {$IFDEF RAD9PLUS}
|
|
WinAPI.Windows, System.Classes, WinAPI.ActiveX, System.Variants;
|
|
{$ELSE}
|
|
Windows, ActiveX, Classes, Variants;
|
|
{$ENDIF}
|
|
|
|
|
|
// *********************************************************************//
|
|
// GUIDS declared in the TypeLibrary. Following prefixes are used:
|
|
// Type Libraries : LIBID_xxxx
|
|
// CoClasses : CLASS_xxxx
|
|
// DISPInterfaces : DIID_xxxx
|
|
// Non-DISP interfaces: IID_xxxx
|
|
// *********************************************************************//
|
|
const
|
|
// TypeLibrary Major and minor versions
|
|
TaskSchedulerMajorVersion = 1;
|
|
TaskSchedulerMinorVersion = 0;
|
|
|
|
LIBID_TaskScheduler: TGUID = '{E34CB9F1-C7F7-424C-BE29-027DCC09363A}';
|
|
|
|
IID_ITaskFolderCollection: TGUID = '{79184A66-8664-423F-97F1-637356A5D812}';
|
|
IID_ITaskFolder: TGUID = '{8CFAC062-A080-4C15-9A88-AA7C2AF80DFC}';
|
|
IID_IRegisteredTask: TGUID = '{9C86F320-DEE3-4DD1-B972-A303F26B061E}';
|
|
IID_IRunningTask: TGUID = '{653758FB-7B9A-4F1E-A471-BEEB8E9B834E}';
|
|
IID_IRunningTaskCollection: TGUID = '{6A67614B-6828-4FEC-AA54-6D52E8F1F2DB}';
|
|
IID_ITaskDefinition: TGUID = '{F5BC8FC5-536D-4F77-B852-FBC1356FDEB6}';
|
|
IID_IRegistrationInfo: TGUID = '{416D8B73-CB41-4EA1-805C-9BE9A5AC4A74}';
|
|
IID_ITriggerCollection: TGUID = '{85DF5081-1B24-4F32-878A-D9D14DF4CB77}';
|
|
IID_ITrigger: TGUID = '{09941815-EA89-4B5B-89E0-2A773801FAC3}';
|
|
IID_IRepetitionPattern: TGUID = '{7FB9ACF1-26BE-400E-85B5-294B9C75DFD6}';
|
|
IID_ITaskSettings: TGUID = '{8FD4711D-2D02-4C8C-87E3-EFF699DE127E}';
|
|
IID_IIdleSettings: TGUID = '{84594461-0053-4342-A8FD-088FABF11F32}';
|
|
IID_INetworkSettings: TGUID = '{9F7DEA84-C30B-4245-80B6-00E9F646F1B4}';
|
|
IID_IPrincipal: TGUID = '{D98D51E5-C9B4-496A-A9C1-18980261CF0F}';
|
|
IID_IActionCollection: TGUID = '{02820E19-7B98-4ED2-B2E8-FDCCCEFF619B}';
|
|
IID_IAction: TGUID = '{BAE54997-48B1-4CBE-9965-D6BE263EBEA4}';
|
|
IID_IRegisteredTaskCollection: TGUID = '{86627EB4-42A7-41E4-A4D9-AC33A72F2D52}';
|
|
IID_ITaskService: TGUID = '{2FABA4C7-4DA9-4013-9697-20CC3FD40F85}';
|
|
IID_ITaskHandler: TGUID = '{839D7762-5121-4009-9234-4F0D19394F04}';
|
|
IID_ITaskHandlerStatus: TGUID = '{EAEC7A8F-27A0-4DDC-8675-14726A01A38A}';
|
|
IID_ITaskVariables: TGUID = '{3E4C9351-D966-4B8B-BB87-CEBA68BB0107}';
|
|
IID_ITaskNamedValuePair: TGUID = '{39038068-2B46-4AFD-8662-7BB6F868D221}';
|
|
IID_ITaskNamedValueCollection: TGUID = '{B4EF826B-63C3-46E4-A504-EF69E4F7EA4D}';
|
|
IID_IIdleTrigger: TGUID = '{D537D2B0-9FB3-4D34-9739-1FF5CE7B1EF3}';
|
|
IID_ILogonTrigger: TGUID = '{72DADE38-FAE4-4B3E-BAF4-5D009AF02B1C}';
|
|
IID_ISessionStateChangeTrigger: TGUID = '{754DA71B-4385-4475-9DD9-598294FA3641}';
|
|
IID_IEventTrigger: TGUID = '{D45B0167-9653-4EEF-B94F-0732CA7AF251}';
|
|
IID_ITimeTrigger: TGUID = '{B45747E0-EBA7-4276-9F29-85C5BB300006}';
|
|
IID_IDailyTrigger: TGUID = '{126C5CD8-B288-41D5-8DBF-E491446ADC5C}';
|
|
IID_IWeeklyTrigger: TGUID = '{5038FC98-82FF-436D-8728-A512A57C9DC1}';
|
|
IID_IMonthlyTrigger: TGUID = '{97C45EF1-6B02-4A1A-9C0E-1EBFBA1500AC}';
|
|
IID_IMonthlyDOWTrigger: TGUID = '{77D025A3-90FA-43AA-B52E-CDA5499B946A}';
|
|
IID_IBootTrigger: TGUID = '{2A9C35DA-D357-41F4-BBC1-207AC1B1F3CB}';
|
|
IID_IRegistrationTrigger: TGUID = '{4C8FEC3A-C218-4E0C-B23D-629024DB91A2}';
|
|
IID_IExecAction: TGUID = '{4C3D624D-FD6B-49A3-B9B7-09CB3CD3F047}';
|
|
IID_IShowMessageAction: TGUID = '{505E9E68-AF89-46B8-A30F-56162A83D537}';
|
|
IID_IComHandlerAction: TGUID = '{6D2FD252-75C5-4F66-90BA-2A7D8CC3039F}';
|
|
IID_IEmailAction: TGUID = '{10F62C64-7E16-4314-A0C2-0C3683F99D40}';
|
|
IID_ITaskSettings2: TGUID = '{2C05C3F0-6EED-4C05-A15F-ED7D7A98A369}';
|
|
CLASS_TaskScheduler_: TGUID = '{0F87369F-A4E5-4CFC-BD3E-73E6154572DD}';
|
|
CLASS_TaskHandlerPS: TGUID = '{F2A69DB7-DA2C-4352-9066-86FEE6DACAC9}';
|
|
CLASS_TaskHandlerStatusPS: TGUID = '{9F15266D-D7BA-48F0-93C1-E6895F6FE5AC}';
|
|
|
|
// *********************************************************************//
|
|
// Declaration of Enumerations defined in Type Library
|
|
// *********************************************************************//
|
|
// Constants for enum _TASK_STATE
|
|
type
|
|
_TASK_STATE = TOleEnum;
|
|
const
|
|
TASK_STATE_UNKNOWN = $00000000;
|
|
TASK_STATE_DISABLED = $00000001;
|
|
TASK_STATE_QUEUED = $00000002;
|
|
TASK_STATE_READY = $00000003;
|
|
TASK_STATE_RUNNING = $00000004;
|
|
|
|
// Constants for enum _TASK_TRIGGER_TYPE2
|
|
type
|
|
_TASK_TRIGGER_TYPE2 = TOleEnum;
|
|
const
|
|
TASK_TRIGGER_EVENT = $00000000;
|
|
TASK_TRIGGER_TIME = $00000001;
|
|
TASK_TRIGGER_DAILY = $00000002;
|
|
TASK_TRIGGER_WEEKLY = $00000003;
|
|
TASK_TRIGGER_MONTHLY = $00000004;
|
|
TASK_TRIGGER_MONTHLYDOW = $00000005;
|
|
TASK_TRIGGER_IDLE = $00000006;
|
|
TASK_TRIGGER_REGISTRATION = $00000007;
|
|
TASK_TRIGGER_BOOT = $00000008;
|
|
TASK_TRIGGER_LOGON = $00000009;
|
|
TASK_TRIGGER_SESSION_STATE_CHANGE = $0000000B;
|
|
|
|
// Constants for enum _TASK_INSTANCES_POLICY
|
|
type
|
|
_TASK_INSTANCES_POLICY = TOleEnum;
|
|
const
|
|
TASK_INSTANCES_PARALLEL = $00000000;
|
|
TASK_INSTANCES_QUEUE = $00000001;
|
|
TASK_INSTANCES_IGNORE_NEW = $00000002;
|
|
TASK_INSTANCES_STOP_EXISTING = $00000003;
|
|
|
|
// Constants for enum _TASK_COMPATIBILITY
|
|
type
|
|
_TASK_COMPATIBILITY = TOleEnum;
|
|
const
|
|
TASK_COMPATIBILITY_AT = $00000000;
|
|
TASK_COMPATIBILITY_V1 = $00000001;
|
|
TASK_COMPATIBILITY_V2 = $00000002;
|
|
TASK_COMPATIBILITY_V2_1 = $00000003;
|
|
|
|
// Constants for enum _TASK_LOGON_TYPE
|
|
type
|
|
_TASK_LOGON_TYPE = TOleEnum;
|
|
const
|
|
TASK_LOGON_NONE = $00000000;
|
|
TASK_LOGON_PASSWORD = $00000001;
|
|
TASK_LOGON_S4U = $00000002;
|
|
TASK_LOGON_INTERACTIVE_TOKEN = $00000003;
|
|
TASK_LOGON_GROUP = $00000004;
|
|
TASK_LOGON_SERVICE_ACCOUNT = $00000005;
|
|
TASK_LOGON_INTERACTIVE_TOKEN_OR_PASSWORD = $00000006;
|
|
|
|
// Constants for enum _TASK_RUNLEVEL
|
|
type
|
|
_TASK_RUNLEVEL = TOleEnum;
|
|
const
|
|
TASK_RUNLEVEL_LUA = $00000000;
|
|
TASK_RUNLEVEL_HIGHEST = $00000001;
|
|
|
|
// Constants for enum _TASK_ACTION_TYPE
|
|
type
|
|
_TASK_ACTION_TYPE = TOleEnum;
|
|
const
|
|
TASK_ACTION_EXEC = $00000000;
|
|
TASK_ACTION_COM_HANDLER = $00000005;
|
|
TASK_ACTION_SEND_EMAIL = $00000006;
|
|
TASK_ACTION_SHOW_MESSAGE = $00000007;
|
|
|
|
// Constants for enum _TASK_SESSION_STATE_CHANGE_TYPE
|
|
type
|
|
_TASK_SESSION_STATE_CHANGE_TYPE = TOleEnum;
|
|
const
|
|
TASK_CONSOLE_CONNECT = $00000001;
|
|
TASK_CONSOLE_DISCONNECT = $00000002;
|
|
TASK_REMOTE_CONNECT = $00000003;
|
|
TASK_REMOTE_DISCONNECT = $00000004;
|
|
TASK_SESSION_LOCK = $00000007;
|
|
TASK_SESSION_UNLOCK = $00000008;
|
|
|
|
// Constants for enum _TASK_RUN_FLAGS
|
|
type
|
|
_TASK_RUN_FLAGS = TOleEnum;
|
|
const
|
|
TASK_RUN_NO_FLAGS = $00000000;
|
|
TASK_RUN_AS_SELF = $00000001;
|
|
TASK_RUN_IGNORE_CONSTRAINTS = $00000002;
|
|
TASK_RUN_USE_SESSION_ID = $00000004;
|
|
TASK_RUN_USER_SID = $00000008;
|
|
|
|
// Constants for enum _TASK_ENUM_FLAGS
|
|
type
|
|
_TASK_ENUM_FLAGS = TOleEnum;
|
|
const
|
|
TASK_ENUM_HIDDEN = $00000001;
|
|
|
|
// Constants for enum _TASK_PROCESSTOKENSID
|
|
type
|
|
_TASK_PROCESSTOKENSID = TOleEnum;
|
|
const
|
|
TASK_PROCESSTOKENSID_NONE = $00000000;
|
|
TASK_PROCESSTOKENSID_UNRESTRICTED = $00000001;
|
|
TASK_PROCESSTOKENSID_DEFAULT = $00000002;
|
|
|
|
// Constants for enum _TASK_CREATION
|
|
type
|
|
_TASK_CREATION = TOleEnum;
|
|
const
|
|
TASK_VALIDATE_ONLY = $00000001;
|
|
TASK_CREATE = $00000002;
|
|
TASK_UPDATE = $00000004;
|
|
TASK_CREATE_OR_UPDATE = $00000006;
|
|
TASK_DISABLE = $00000008;
|
|
TASK_DONT_ADD_PRINCIPAL_ACE = $00000010;
|
|
TASK_IGNORE_REGISTRATION_TRIGGERS = $00000020;
|
|
|
|
type
|
|
|
|
// *********************************************************************//
|
|
// Forward declaration of types defined in TypeLibrary
|
|
// *********************************************************************//
|
|
ITaskFolderCollection = interface;
|
|
ITaskFolderCollectionDisp = dispinterface;
|
|
ITaskFolder = interface;
|
|
ITaskFolderDisp = dispinterface;
|
|
IRegisteredTask = interface;
|
|
IRegisteredTaskDisp = dispinterface;
|
|
IRunningTask = interface;
|
|
IRunningTaskDisp = dispinterface;
|
|
IRunningTaskCollection = interface;
|
|
IRunningTaskCollectionDisp = dispinterface;
|
|
ITaskDefinition = interface;
|
|
ITaskDefinitionDisp = dispinterface;
|
|
IRegistrationInfo = interface;
|
|
IRegistrationInfoDisp = dispinterface;
|
|
ITriggerCollection = interface;
|
|
ITriggerCollectionDisp = dispinterface;
|
|
ITrigger = interface;
|
|
ITriggerDisp = dispinterface;
|
|
IRepetitionPattern = interface;
|
|
IRepetitionPatternDisp = dispinterface;
|
|
ITaskSettings = interface;
|
|
ITaskSettingsDisp = dispinterface;
|
|
IIdleSettings = interface;
|
|
IIdleSettingsDisp = dispinterface;
|
|
INetworkSettings = interface;
|
|
INetworkSettingsDisp = dispinterface;
|
|
IPrincipal = interface;
|
|
IPrincipalDisp = dispinterface;
|
|
IActionCollection = interface;
|
|
IActionCollectionDisp = dispinterface;
|
|
IAction = interface;
|
|
IActionDisp = dispinterface;
|
|
IRegisteredTaskCollection = interface;
|
|
IRegisteredTaskCollectionDisp = dispinterface;
|
|
ITaskService = interface;
|
|
ITaskServiceDisp = dispinterface;
|
|
ITaskHandler = interface;
|
|
ITaskHandlerStatus = interface;
|
|
ITaskVariables = interface;
|
|
ITaskNamedValuePair = interface;
|
|
ITaskNamedValuePairDisp = dispinterface;
|
|
ITaskNamedValueCollection = interface;
|
|
ITaskNamedValueCollectionDisp = dispinterface;
|
|
IIdleTrigger = interface;
|
|
IIdleTriggerDisp = dispinterface;
|
|
ILogonTrigger = interface;
|
|
ILogonTriggerDisp = dispinterface;
|
|
ISessionStateChangeTrigger = interface;
|
|
ISessionStateChangeTriggerDisp = dispinterface;
|
|
IEventTrigger = interface;
|
|
IEventTriggerDisp = dispinterface;
|
|
ITimeTrigger = interface;
|
|
ITimeTriggerDisp = dispinterface;
|
|
IDailyTrigger = interface;
|
|
IDailyTriggerDisp = dispinterface;
|
|
IWeeklyTrigger = interface;
|
|
IWeeklyTriggerDisp = dispinterface;
|
|
IMonthlyTrigger = interface;
|
|
IMonthlyTriggerDisp = dispinterface;
|
|
IMonthlyDOWTrigger = interface;
|
|
IMonthlyDOWTriggerDisp = dispinterface;
|
|
IBootTrigger = interface;
|
|
IBootTriggerDisp = dispinterface;
|
|
IRegistrationTrigger = interface;
|
|
IRegistrationTriggerDisp = dispinterface;
|
|
IExecAction = interface;
|
|
IExecActionDisp = dispinterface;
|
|
IShowMessageAction = interface;
|
|
IShowMessageActionDisp = dispinterface;
|
|
IComHandlerAction = interface;
|
|
IComHandlerActionDisp = dispinterface;
|
|
IEmailAction = interface;
|
|
IEmailActionDisp = dispinterface;
|
|
ITaskSettings2 = interface;
|
|
ITaskSettings2Disp = dispinterface;
|
|
|
|
// *********************************************************************//
|
|
// Declaration of CoClasses defined in Type Library
|
|
// (NOTE: Here we map each CoClass to its Default Interface)
|
|
// *********************************************************************//
|
|
TaskScheduler_ = ITaskService;
|
|
TaskHandlerPS = ITaskHandler;
|
|
TaskHandlerStatusPS = ITaskHandlerStatus;
|
|
|
|
|
|
// *********************************************************************//
|
|
// Declaration of structures, unions and aliases.
|
|
// *********************************************************************//
|
|
PUserType1 = ^_SYSTEMTIME; {*}
|
|
|
|
{$ALIGN 2}
|
|
_SYSTEMTIME = record
|
|
wYear: Word;
|
|
wMonth: Word;
|
|
wDayOfWeek: Word;
|
|
wDay: Word;
|
|
wHour: Word;
|
|
wMinute: Word;
|
|
wSecond: Word;
|
|
wMilliseconds: Word;
|
|
end;
|
|
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskFolderCollection
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {79184A66-8664-423F-97F1-637356A5D812}
|
|
// *********************************************************************//
|
|
ITaskFolderCollection = interface(IDispatch)
|
|
['{79184A66-8664-423F-97F1-637356A5D812}']
|
|
function Get_Count: Integer; safecall;
|
|
function Get_Item(index: OleVariant): ITaskFolder; safecall;
|
|
function Get__NewEnum: IUnknown; safecall;
|
|
property Count: Integer read Get_Count;
|
|
property Item[index: OleVariant]: ITaskFolder read Get_Item; default;
|
|
property _NewEnum: IUnknown read Get__NewEnum;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskFolderCollectionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {79184A66-8664-423F-97F1-637356A5D812}
|
|
// *********************************************************************//
|
|
ITaskFolderCollectionDisp = dispinterface
|
|
['{79184A66-8664-423F-97F1-637356A5D812}']
|
|
property Count: Integer readonly dispid 1610743808;
|
|
property Item[index: OleVariant]: ITaskFolder readonly dispid 0; default;
|
|
property _NewEnum: IUnknown readonly dispid -4;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskFolder
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {8CFAC062-A080-4C15-9A88-AA7C2AF80DFC}
|
|
// *********************************************************************//
|
|
ITaskFolder = interface(IDispatch)
|
|
['{8CFAC062-A080-4C15-9A88-AA7C2AF80DFC}']
|
|
function Get_Name: WideString; safecall;
|
|
function Get_Path: WideString; safecall;
|
|
function GetFolder(const Path: WideString): ITaskFolder; safecall;
|
|
function GetFolders(flags: Integer): ITaskFolderCollection; safecall;
|
|
function CreateFolder(const subFolderName: WideString; sddl: OleVariant): ITaskFolder; safecall;
|
|
procedure DeleteFolder(const subFolderName: WideString; flags: Integer); safecall;
|
|
function GetTask(const Path: WideString): IRegisteredTask; safecall;
|
|
function GetTasks(flags: Integer): IRegisteredTaskCollection; safecall;
|
|
procedure DeleteTask(const Name: WideString; flags: Integer); safecall;
|
|
function RegisterTask(const Path: WideString; const XmlText: WideString; flags: Integer;
|
|
UserId: OleVariant; password: OleVariant; LogonType: _TASK_LOGON_TYPE;
|
|
sddl: OleVariant): IRegisteredTask; safecall;
|
|
function RegisterTaskDefinition(const Path: WideString; const pDefinition: ITaskDefinition;
|
|
flags: Integer; UserId: OleVariant; password: OleVariant;
|
|
LogonType: _TASK_LOGON_TYPE; sddl: OleVariant): IRegisteredTask; safecall;
|
|
function GetSecurityDescriptor(securityInformation: Integer): WideString; safecall;
|
|
procedure SetSecurityDescriptor(const sddl: WideString; flags: Integer); safecall;
|
|
property Name: WideString read Get_Name;
|
|
property Path: WideString read Get_Path;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskFolderDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {8CFAC062-A080-4C15-9A88-AA7C2AF80DFC}
|
|
// *********************************************************************//
|
|
ITaskFolderDisp = dispinterface
|
|
['{8CFAC062-A080-4C15-9A88-AA7C2AF80DFC}']
|
|
property Name: WideString readonly dispid 1;
|
|
property Path: WideString readonly dispid 0;
|
|
function GetFolder(const Path: WideString): ITaskFolder; dispid 3;
|
|
function GetFolders(flags: Integer): ITaskFolderCollection; dispid 4;
|
|
function CreateFolder(const subFolderName: WideString; sddl: OleVariant): ITaskFolder; dispid 5;
|
|
procedure DeleteFolder(const subFolderName: WideString; flags: Integer); dispid 6;
|
|
function GetTask(const Path: WideString): IRegisteredTask; dispid 7;
|
|
function GetTasks(flags: Integer): IRegisteredTaskCollection; dispid 8;
|
|
procedure DeleteTask(const Name: WideString; flags: Integer); dispid 9;
|
|
function RegisterTask(const Path: WideString; const XmlText: WideString; flags: Integer;
|
|
UserId: OleVariant; password: OleVariant; LogonType: _TASK_LOGON_TYPE;
|
|
sddl: OleVariant): IRegisteredTask; dispid 10;
|
|
function RegisterTaskDefinition(const Path: WideString; const pDefinition: ITaskDefinition;
|
|
flags: Integer; UserId: OleVariant; password: OleVariant;
|
|
LogonType: _TASK_LOGON_TYPE; sddl: OleVariant): IRegisteredTask; dispid 11;
|
|
function GetSecurityDescriptor(securityInformation: Integer): WideString; dispid 12;
|
|
procedure SetSecurityDescriptor(const sddl: WideString; flags: Integer); dispid 13;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRegisteredTask
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {9C86F320-DEE3-4DD1-B972-A303F26B061E}
|
|
// *********************************************************************//
|
|
IRegisteredTask = interface(IDispatch)
|
|
['{9C86F320-DEE3-4DD1-B972-A303F26B061E}']
|
|
function Get_Name: WideString; safecall;
|
|
function Get_Path: WideString; safecall;
|
|
function Get_State: _TASK_STATE; safecall;
|
|
function Get_Enabled: WordBool; safecall;
|
|
procedure Set_Enabled(pEnabled: WordBool); safecall;
|
|
function Run(params: OleVariant): IRunningTask; safecall;
|
|
function RunEx(params: OleVariant; flags: Integer; sessionID: Integer; const user: WideString): IRunningTask; safecall;
|
|
function GetInstances(flags: Integer): IRunningTaskCollection; safecall;
|
|
function Get_LastRunTime: TDateTime; safecall;
|
|
function Get_LastTaskResult: Integer; safecall;
|
|
function Get_NumberOfMissedRuns: Integer; safecall;
|
|
function Get_NextRunTime: TDateTime; safecall;
|
|
function Get_Definition: ITaskDefinition; safecall;
|
|
function Get_Xml: WideString; safecall;
|
|
function GetSecurityDescriptor(securityInformation: Integer): WideString; safecall;
|
|
procedure SetSecurityDescriptor(const sddl: WideString; flags: Integer); safecall;
|
|
procedure Stop(flags: Integer); safecall;
|
|
procedure GetRunTimes(var pstStart: _SYSTEMTIME; var pstEnd: _SYSTEMTIME; var pCount: LongWord;
|
|
out pRunTimes: PUserType1); safecall;
|
|
property Name: WideString read Get_Name;
|
|
property Path: WideString read Get_Path;
|
|
property State: _TASK_STATE read Get_State;
|
|
property Enabled: WordBool read Get_Enabled write Set_Enabled;
|
|
property LastRunTime: TDateTime read Get_LastRunTime;
|
|
property LastTaskResult: Integer read Get_LastTaskResult;
|
|
property NumberOfMissedRuns: Integer read Get_NumberOfMissedRuns;
|
|
property NextRunTime: TDateTime read Get_NextRunTime;
|
|
property Definition: ITaskDefinition read Get_Definition;
|
|
property Xml: WideString read Get_Xml;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRegisteredTaskDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {9C86F320-DEE3-4DD1-B972-A303F26B061E}
|
|
// *********************************************************************//
|
|
IRegisteredTaskDisp = dispinterface
|
|
['{9C86F320-DEE3-4DD1-B972-A303F26B061E}']
|
|
property Name: WideString readonly dispid 1;
|
|
property Path: WideString readonly dispid 0;
|
|
property State: _TASK_STATE readonly dispid 2;
|
|
property Enabled: WordBool dispid 3;
|
|
function Run(params: OleVariant): IRunningTask; dispid 5;
|
|
function RunEx(params: OleVariant; flags: Integer; sessionID: Integer; const user: WideString): IRunningTask; dispid 6;
|
|
function GetInstances(flags: Integer): IRunningTaskCollection; dispid 7;
|
|
property LastRunTime: TDateTime readonly dispid 8;
|
|
property LastTaskResult: Integer readonly dispid 9;
|
|
property NumberOfMissedRuns: Integer readonly dispid 11;
|
|
property NextRunTime: TDateTime readonly dispid 12;
|
|
property Definition: ITaskDefinition readonly dispid 13;
|
|
property Xml: WideString readonly dispid 14;
|
|
function GetSecurityDescriptor(securityInformation: Integer): WideString; dispid 15;
|
|
procedure SetSecurityDescriptor(const sddl: WideString; flags: Integer); dispid 16;
|
|
procedure Stop(flags: Integer); dispid 17;
|
|
procedure GetRunTimes(var pstStart: {??_SYSTEMTIME}OleVariant;
|
|
var pstEnd: {??_SYSTEMTIME}OleVariant; var pCount: LongWord;
|
|
out pRunTimes: {??PUserType1}OleVariant); dispid 1610743825;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRunningTask
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {653758FB-7B9A-4F1E-A471-BEEB8E9B834E}
|
|
// *********************************************************************//
|
|
IRunningTask = interface(IDispatch)
|
|
['{653758FB-7B9A-4F1E-A471-BEEB8E9B834E}']
|
|
function Get_Name: WideString; safecall;
|
|
function Get_InstanceGuid: WideString; safecall;
|
|
function Get_Path: WideString; safecall;
|
|
function Get_State: _TASK_STATE; safecall;
|
|
function Get_CurrentAction: WideString; safecall;
|
|
procedure Stop; safecall;
|
|
procedure Refresh; safecall;
|
|
function Get_EnginePID: LongWord; safecall;
|
|
property Name: WideString read Get_Name;
|
|
property InstanceGuid: WideString read Get_InstanceGuid;
|
|
property Path: WideString read Get_Path;
|
|
property State: _TASK_STATE read Get_State;
|
|
property CurrentAction: WideString read Get_CurrentAction;
|
|
property EnginePID: LongWord read Get_EnginePID;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRunningTaskDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {653758FB-7B9A-4F1E-A471-BEEB8E9B834E}
|
|
// *********************************************************************//
|
|
IRunningTaskDisp = dispinterface
|
|
['{653758FB-7B9A-4F1E-A471-BEEB8E9B834E}']
|
|
property Name: WideString readonly dispid 1;
|
|
property InstanceGuid: WideString readonly dispid 0;
|
|
property Path: WideString readonly dispid 2;
|
|
property State: _TASK_STATE readonly dispid 3;
|
|
property CurrentAction: WideString readonly dispid 4;
|
|
procedure Stop; dispid 5;
|
|
procedure Refresh; dispid 6;
|
|
property EnginePID: LongWord readonly dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRunningTaskCollection
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {6A67614B-6828-4FEC-AA54-6D52E8F1F2DB}
|
|
// *********************************************************************//
|
|
IRunningTaskCollection = interface(IDispatch)
|
|
['{6A67614B-6828-4FEC-AA54-6D52E8F1F2DB}']
|
|
function Get_Count: Integer; safecall;
|
|
function Get_Item(index: OleVariant): IRunningTask; safecall;
|
|
function Get__NewEnum: IUnknown; safecall;
|
|
property Count: Integer read Get_Count;
|
|
property Item[index: OleVariant]: IRunningTask read Get_Item; default;
|
|
property _NewEnum: IUnknown read Get__NewEnum;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRunningTaskCollectionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {6A67614B-6828-4FEC-AA54-6D52E8F1F2DB}
|
|
// *********************************************************************//
|
|
IRunningTaskCollectionDisp = dispinterface
|
|
['{6A67614B-6828-4FEC-AA54-6D52E8F1F2DB}']
|
|
property Count: Integer readonly dispid 1;
|
|
property Item[index: OleVariant]: IRunningTask readonly dispid 0; default;
|
|
property _NewEnum: IUnknown readonly dispid -4;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskDefinition
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {F5BC8FC5-536D-4F77-B852-FBC1356FDEB6}
|
|
// *********************************************************************//
|
|
ITaskDefinition = interface(IDispatch)
|
|
['{F5BC8FC5-536D-4F77-B852-FBC1356FDEB6}']
|
|
function Get_RegistrationInfo: IRegistrationInfo; safecall;
|
|
procedure Set_RegistrationInfo(const ppRegistrationInfo: IRegistrationInfo); safecall;
|
|
function Get_Triggers: ITriggerCollection; safecall;
|
|
procedure Set_Triggers(const ppTriggers: ITriggerCollection); safecall;
|
|
function Get_Settings: ITaskSettings; safecall;
|
|
procedure Set_Settings(const ppSettings: ITaskSettings); safecall;
|
|
function Get_Data: WideString; safecall;
|
|
procedure Set_Data(const pData: WideString); safecall;
|
|
function Get_Principal: IPrincipal; safecall;
|
|
procedure Set_Principal(const ppPrincipal: IPrincipal); safecall;
|
|
function Get_Actions: IActionCollection; safecall;
|
|
procedure Set_Actions(const ppActions: IActionCollection); safecall;
|
|
function Get_XmlText: WideString; safecall;
|
|
procedure Set_XmlText(const pXml: WideString); safecall;
|
|
property RegistrationInfo: IRegistrationInfo read Get_RegistrationInfo write Set_RegistrationInfo;
|
|
property Triggers: ITriggerCollection read Get_Triggers write Set_Triggers;
|
|
property Settings: ITaskSettings read Get_Settings write Set_Settings;
|
|
property Data: WideString read Get_Data write Set_Data;
|
|
property Principal: IPrincipal read Get_Principal write Set_Principal;
|
|
property Actions: IActionCollection read Get_Actions write Set_Actions;
|
|
property XmlText: WideString read Get_XmlText write Set_XmlText;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskDefinitionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {F5BC8FC5-536D-4F77-B852-FBC1356FDEB6}
|
|
// *********************************************************************//
|
|
ITaskDefinitionDisp = dispinterface
|
|
['{F5BC8FC5-536D-4F77-B852-FBC1356FDEB6}']
|
|
property RegistrationInfo: IRegistrationInfo dispid 1;
|
|
property Triggers: ITriggerCollection dispid 2;
|
|
property Settings: ITaskSettings dispid 7;
|
|
property Data: WideString dispid 11;
|
|
property Principal: IPrincipal dispid 12;
|
|
property Actions: IActionCollection dispid 13;
|
|
property XmlText: WideString dispid 14;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRegistrationInfo
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {416D8B73-CB41-4EA1-805C-9BE9A5AC4A74}
|
|
// *********************************************************************//
|
|
IRegistrationInfo = interface(IDispatch)
|
|
['{416D8B73-CB41-4EA1-805C-9BE9A5AC4A74}']
|
|
function Get_Description: WideString; safecall;
|
|
procedure Set_Description(const pDescription: WideString); safecall;
|
|
function Get_Author: WideString; safecall;
|
|
procedure Set_Author(const pAuthor: WideString); safecall;
|
|
function Get_Version: WideString; safecall;
|
|
procedure Set_Version(const pVersion: WideString); safecall;
|
|
function Get_Date: WideString; safecall;
|
|
procedure Set_Date(const pDate: WideString); safecall;
|
|
function Get_Documentation: WideString; safecall;
|
|
procedure Set_Documentation(const pDocumentation: WideString); safecall;
|
|
function Get_XmlText: WideString; safecall;
|
|
procedure Set_XmlText(const pText: WideString); safecall;
|
|
function Get_URI: WideString; safecall;
|
|
procedure Set_URI(const pUri: WideString); safecall;
|
|
function Get_SecurityDescriptor: OleVariant; safecall;
|
|
procedure Set_SecurityDescriptor(pSddl: OleVariant); safecall;
|
|
function Get_Source: WideString; safecall;
|
|
procedure Set_Source(const pSource: WideString); safecall;
|
|
property Description: WideString read Get_Description write Set_Description;
|
|
property Author: WideString read Get_Author write Set_Author;
|
|
property Version: WideString read Get_Version write Set_Version;
|
|
property Date: WideString read Get_Date write Set_Date;
|
|
property Documentation: WideString read Get_Documentation write Set_Documentation;
|
|
property XmlText: WideString read Get_XmlText write Set_XmlText;
|
|
property URI: WideString read Get_URI write Set_URI;
|
|
property SecurityDescriptor: OleVariant read Get_SecurityDescriptor write Set_SecurityDescriptor;
|
|
property Source: WideString read Get_Source write Set_Source;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRegistrationInfoDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {416D8B73-CB41-4EA1-805C-9BE9A5AC4A74}
|
|
// *********************************************************************//
|
|
IRegistrationInfoDisp = dispinterface
|
|
['{416D8B73-CB41-4EA1-805C-9BE9A5AC4A74}']
|
|
property Description: WideString dispid 1;
|
|
property Author: WideString dispid 2;
|
|
property Version: WideString dispid 4;
|
|
property Date: WideString dispid 5;
|
|
property Documentation: WideString dispid 6;
|
|
property XmlText: WideString dispid 9;
|
|
property URI: WideString dispid 10;
|
|
property SecurityDescriptor: OleVariant dispid 11;
|
|
property Source: WideString dispid 12;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITriggerCollection
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {85DF5081-1B24-4F32-878A-D9D14DF4CB77}
|
|
// *********************************************************************//
|
|
ITriggerCollection = interface(IDispatch)
|
|
['{85DF5081-1B24-4F32-878A-D9D14DF4CB77}']
|
|
function Get_Count: Integer; safecall;
|
|
function Get_Item(index: Integer): ITrigger; safecall;
|
|
function Get__NewEnum: IUnknown; safecall;
|
|
function Create(Type_: _TASK_TRIGGER_TYPE2): ITrigger; safecall;
|
|
procedure Remove(index: OleVariant); safecall;
|
|
procedure Clear; safecall;
|
|
property Count: Integer read Get_Count;
|
|
property Item[index: Integer]: ITrigger read Get_Item; default;
|
|
property _NewEnum: IUnknown read Get__NewEnum;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITriggerCollectionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {85DF5081-1B24-4F32-878A-D9D14DF4CB77}
|
|
// *********************************************************************//
|
|
ITriggerCollectionDisp = dispinterface
|
|
['{85DF5081-1B24-4F32-878A-D9D14DF4CB77}']
|
|
property Count: Integer readonly dispid 1;
|
|
property Item[index: Integer]: ITrigger readonly dispid 0; default;
|
|
property _NewEnum: IUnknown readonly dispid -4;
|
|
function Create(Type_: _TASK_TRIGGER_TYPE2): ITrigger; dispid 2;
|
|
procedure Remove(index: OleVariant); dispid 4;
|
|
procedure Clear; dispid 5;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {09941815-EA89-4B5B-89E0-2A773801FAC3}
|
|
// *********************************************************************//
|
|
ITrigger = interface(IDispatch)
|
|
['{09941815-EA89-4B5B-89E0-2A773801FAC3}']
|
|
function Get_type_: _TASK_TRIGGER_TYPE2; safecall;
|
|
function Get_Id: WideString; safecall;
|
|
procedure Set_Id(const pId: WideString); safecall;
|
|
function Get_Repetition: IRepetitionPattern; safecall;
|
|
procedure Set_Repetition(const ppRepeat: IRepetitionPattern); safecall;
|
|
function Get_ExecutionTimeLimit: WideString; safecall;
|
|
procedure Set_ExecutionTimeLimit(const pTimeLimit: WideString); safecall;
|
|
function Get_StartBoundary: WideString; safecall;
|
|
procedure Set_StartBoundary(const pStart: WideString); safecall;
|
|
function Get_EndBoundary: WideString; safecall;
|
|
procedure Set_EndBoundary(const pEnd: WideString); safecall;
|
|
function Get_Enabled: WordBool; safecall;
|
|
procedure Set_Enabled(pEnabled: WordBool); safecall;
|
|
property type_: _TASK_TRIGGER_TYPE2 read Get_type_;
|
|
property Id: WideString read Get_Id write Set_Id;
|
|
property Repetition: IRepetitionPattern read Get_Repetition write Set_Repetition;
|
|
property ExecutionTimeLimit: WideString read Get_ExecutionTimeLimit write Set_ExecutionTimeLimit;
|
|
property StartBoundary: WideString read Get_StartBoundary write Set_StartBoundary;
|
|
property EndBoundary: WideString read Get_EndBoundary write Set_EndBoundary;
|
|
property Enabled: WordBool read Get_Enabled write Set_Enabled;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {09941815-EA89-4B5B-89E0-2A773801FAC3}
|
|
// *********************************************************************//
|
|
ITriggerDisp = dispinterface
|
|
['{09941815-EA89-4B5B-89E0-2A773801FAC3}']
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRepetitionPattern
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {7FB9ACF1-26BE-400E-85B5-294B9C75DFD6}
|
|
// *********************************************************************//
|
|
IRepetitionPattern = interface(IDispatch)
|
|
['{7FB9ACF1-26BE-400E-85B5-294B9C75DFD6}']
|
|
function Get_Interval: WideString; safecall;
|
|
procedure Set_Interval(const pInterval: WideString); safecall;
|
|
function Get_Duration: WideString; safecall;
|
|
procedure Set_Duration(const pDuration: WideString); safecall;
|
|
function Get_StopAtDurationEnd: WordBool; safecall;
|
|
procedure Set_StopAtDurationEnd(pStop: WordBool); safecall;
|
|
property Interval: WideString read Get_Interval write Set_Interval;
|
|
property Duration: WideString read Get_Duration write Set_Duration;
|
|
property StopAtDurationEnd: WordBool read Get_StopAtDurationEnd write Set_StopAtDurationEnd;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRepetitionPatternDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {7FB9ACF1-26BE-400E-85B5-294B9C75DFD6}
|
|
// *********************************************************************//
|
|
IRepetitionPatternDisp = dispinterface
|
|
['{7FB9ACF1-26BE-400E-85B5-294B9C75DFD6}']
|
|
property Interval: WideString dispid 1;
|
|
property Duration: WideString dispid 2;
|
|
property StopAtDurationEnd: WordBool dispid 3;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskSettings
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {8FD4711D-2D02-4C8C-87E3-EFF699DE127E}
|
|
// *********************************************************************//
|
|
ITaskSettings = interface(IDispatch)
|
|
['{8FD4711D-2D02-4C8C-87E3-EFF699DE127E}']
|
|
function Get_AllowDemandStart: WordBool; safecall;
|
|
procedure Set_AllowDemandStart(pAllowDemandStart: WordBool); safecall;
|
|
function Get_RestartInterval: WideString; safecall;
|
|
procedure Set_RestartInterval(const pRestartInterval: WideString); safecall;
|
|
function Get_RestartCount: SYSINT; safecall;
|
|
procedure Set_RestartCount(pRestartCount: SYSINT); safecall;
|
|
function Get_MultipleInstances: _TASK_INSTANCES_POLICY; safecall;
|
|
procedure Set_MultipleInstances(pPolicy: _TASK_INSTANCES_POLICY); safecall;
|
|
function Get_StopIfGoingOnBatteries: WordBool; safecall;
|
|
procedure Set_StopIfGoingOnBatteries(pStopIfOnBatteries: WordBool); safecall;
|
|
function Get_DisallowStartIfOnBatteries: WordBool; safecall;
|
|
procedure Set_DisallowStartIfOnBatteries(pDisallowStart: WordBool); safecall;
|
|
function Get_AllowHardTerminate: WordBool; safecall;
|
|
procedure Set_AllowHardTerminate(pAllowHardTerminate: WordBool); safecall;
|
|
function Get_StartWhenAvailable: WordBool; safecall;
|
|
procedure Set_StartWhenAvailable(pStartWhenAvailable: WordBool); safecall;
|
|
function Get_XmlText: WideString; safecall;
|
|
procedure Set_XmlText(const pText: WideString); safecall;
|
|
function Get_RunOnlyIfNetworkAvailable: WordBool; safecall;
|
|
procedure Set_RunOnlyIfNetworkAvailable(pRunOnlyIfNetworkAvailable: WordBool); safecall;
|
|
function Get_ExecutionTimeLimit: WideString; safecall;
|
|
procedure Set_ExecutionTimeLimit(const pExecutionTimeLimit: WideString); safecall;
|
|
function Get_Enabled: WordBool; safecall;
|
|
procedure Set_Enabled(pEnabled: WordBool); safecall;
|
|
function Get_DeleteExpiredTaskAfter: WideString; safecall;
|
|
procedure Set_DeleteExpiredTaskAfter(const pExpirationDelay: WideString); safecall;
|
|
function Get_Priority: SYSINT; safecall;
|
|
procedure Set_Priority(pPriority: SYSINT); safecall;
|
|
function Get_Compatibility: _TASK_COMPATIBILITY; safecall;
|
|
procedure Set_Compatibility(pCompatLevel: _TASK_COMPATIBILITY); safecall;
|
|
function Get_Hidden: WordBool; safecall;
|
|
procedure Set_Hidden(pHidden: WordBool); safecall;
|
|
function Get_IdleSettings: IIdleSettings; safecall;
|
|
procedure Set_IdleSettings(const ppIdleSettings: IIdleSettings); safecall;
|
|
function Get_RunOnlyIfIdle: WordBool; safecall;
|
|
procedure Set_RunOnlyIfIdle(pRunOnlyIfIdle: WordBool); safecall;
|
|
function Get_WakeToRun: WordBool; safecall;
|
|
procedure Set_WakeToRun(pWake: WordBool); safecall;
|
|
function Get_NetworkSettings: INetworkSettings; safecall;
|
|
procedure Set_NetworkSettings(const ppNetworkSettings: INetworkSettings); safecall;
|
|
property AllowDemandStart: WordBool read Get_AllowDemandStart write Set_AllowDemandStart;
|
|
property RestartInterval: WideString read Get_RestartInterval write Set_RestartInterval;
|
|
property RestartCount: SYSINT read Get_RestartCount write Set_RestartCount;
|
|
property MultipleInstances: _TASK_INSTANCES_POLICY read Get_MultipleInstances write Set_MultipleInstances;
|
|
property StopIfGoingOnBatteries: WordBool read Get_StopIfGoingOnBatteries write Set_StopIfGoingOnBatteries;
|
|
property DisallowStartIfOnBatteries: WordBool read Get_DisallowStartIfOnBatteries write Set_DisallowStartIfOnBatteries;
|
|
property AllowHardTerminate: WordBool read Get_AllowHardTerminate write Set_AllowHardTerminate;
|
|
property StartWhenAvailable: WordBool read Get_StartWhenAvailable write Set_StartWhenAvailable;
|
|
property XmlText: WideString read Get_XmlText write Set_XmlText;
|
|
property RunOnlyIfNetworkAvailable: WordBool read Get_RunOnlyIfNetworkAvailable write Set_RunOnlyIfNetworkAvailable;
|
|
property ExecutionTimeLimit: WideString read Get_ExecutionTimeLimit write Set_ExecutionTimeLimit;
|
|
property Enabled: WordBool read Get_Enabled write Set_Enabled;
|
|
property DeleteExpiredTaskAfter: WideString read Get_DeleteExpiredTaskAfter write Set_DeleteExpiredTaskAfter;
|
|
property Priority: SYSINT read Get_Priority write Set_Priority;
|
|
property Compatibility: _TASK_COMPATIBILITY read Get_Compatibility write Set_Compatibility;
|
|
property Hidden: WordBool read Get_Hidden write Set_Hidden;
|
|
property IdleSettings: IIdleSettings read Get_IdleSettings write Set_IdleSettings;
|
|
property RunOnlyIfIdle: WordBool read Get_RunOnlyIfIdle write Set_RunOnlyIfIdle;
|
|
property WakeToRun: WordBool read Get_WakeToRun write Set_WakeToRun;
|
|
property NetworkSettings: INetworkSettings read Get_NetworkSettings write Set_NetworkSettings;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskSettingsDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {8FD4711D-2D02-4C8C-87E3-EFF699DE127E}
|
|
// *********************************************************************//
|
|
ITaskSettingsDisp = dispinterface
|
|
['{8FD4711D-2D02-4C8C-87E3-EFF699DE127E}']
|
|
property AllowDemandStart: WordBool dispid 3;
|
|
property RestartInterval: WideString dispid 4;
|
|
property RestartCount: SYSINT dispid 5;
|
|
property MultipleInstances: _TASK_INSTANCES_POLICY dispid 6;
|
|
property StopIfGoingOnBatteries: WordBool dispid 7;
|
|
property DisallowStartIfOnBatteries: WordBool dispid 8;
|
|
property AllowHardTerminate: WordBool dispid 9;
|
|
property StartWhenAvailable: WordBool dispid 10;
|
|
property XmlText: WideString dispid 11;
|
|
property RunOnlyIfNetworkAvailable: WordBool dispid 12;
|
|
property ExecutionTimeLimit: WideString dispid 13;
|
|
property Enabled: WordBool dispid 14;
|
|
property DeleteExpiredTaskAfter: WideString dispid 15;
|
|
property Priority: SYSINT dispid 16;
|
|
property Compatibility: _TASK_COMPATIBILITY dispid 17;
|
|
property Hidden: WordBool dispid 18;
|
|
property IdleSettings: IIdleSettings dispid 19;
|
|
property RunOnlyIfIdle: WordBool dispid 20;
|
|
property WakeToRun: WordBool dispid 21;
|
|
property NetworkSettings: INetworkSettings dispid 22;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IIdleSettings
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {84594461-0053-4342-A8FD-088FABF11F32}
|
|
// *********************************************************************//
|
|
IIdleSettings = interface(IDispatch)
|
|
['{84594461-0053-4342-A8FD-088FABF11F32}']
|
|
function Get_IdleDuration: WideString; safecall;
|
|
procedure Set_IdleDuration(const pDelay: WideString); safecall;
|
|
function Get_WaitTimeout: WideString; safecall;
|
|
procedure Set_WaitTimeout(const pTimeout: WideString); safecall;
|
|
function Get_StopOnIdleEnd: WordBool; safecall;
|
|
procedure Set_StopOnIdleEnd(pStop: WordBool); safecall;
|
|
function Get_RestartOnIdle: WordBool; safecall;
|
|
procedure Set_RestartOnIdle(pRestart: WordBool); safecall;
|
|
property IdleDuration: WideString read Get_IdleDuration write Set_IdleDuration;
|
|
property WaitTimeout: WideString read Get_WaitTimeout write Set_WaitTimeout;
|
|
property StopOnIdleEnd: WordBool read Get_StopOnIdleEnd write Set_StopOnIdleEnd;
|
|
property RestartOnIdle: WordBool read Get_RestartOnIdle write Set_RestartOnIdle;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IIdleSettingsDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {84594461-0053-4342-A8FD-088FABF11F32}
|
|
// *********************************************************************//
|
|
IIdleSettingsDisp = dispinterface
|
|
['{84594461-0053-4342-A8FD-088FABF11F32}']
|
|
property IdleDuration: WideString dispid 1;
|
|
property WaitTimeout: WideString dispid 2;
|
|
property StopOnIdleEnd: WordBool dispid 3;
|
|
property RestartOnIdle: WordBool dispid 4;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: INetworkSettings
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {9F7DEA84-C30B-4245-80B6-00E9F646F1B4}
|
|
// *********************************************************************//
|
|
INetworkSettings = interface(IDispatch)
|
|
['{9F7DEA84-C30B-4245-80B6-00E9F646F1B4}']
|
|
function Get_Name: WideString; safecall;
|
|
procedure Set_Name(const pName: WideString); safecall;
|
|
function Get_Id: WideString; safecall;
|
|
procedure Set_Id(const pId: WideString); safecall;
|
|
property Name: WideString read Get_Name write Set_Name;
|
|
property Id: WideString read Get_Id write Set_Id;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: INetworkSettingsDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {9F7DEA84-C30B-4245-80B6-00E9F646F1B4}
|
|
// *********************************************************************//
|
|
INetworkSettingsDisp = dispinterface
|
|
['{9F7DEA84-C30B-4245-80B6-00E9F646F1B4}']
|
|
property Name: WideString dispid 1;
|
|
property Id: WideString dispid 2;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IPrincipal
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {D98D51E5-C9B4-496A-A9C1-18980261CF0F}
|
|
// *********************************************************************//
|
|
IPrincipal = interface(IDispatch)
|
|
['{D98D51E5-C9B4-496A-A9C1-18980261CF0F}']
|
|
function Get_Id: WideString; safecall;
|
|
procedure Set_Id(const pId: WideString); safecall;
|
|
function Get_DisplayName: WideString; safecall;
|
|
procedure Set_DisplayName(const pName: WideString); safecall;
|
|
function Get_UserId: WideString; safecall;
|
|
procedure Set_UserId(const pUser: WideString); safecall;
|
|
function Get_LogonType: _TASK_LOGON_TYPE; safecall;
|
|
procedure Set_LogonType(pLogon: _TASK_LOGON_TYPE); safecall;
|
|
function Get_GroupId: WideString; safecall;
|
|
procedure Set_GroupId(const pGroup: WideString); safecall;
|
|
function Get_RunLevel: _TASK_RUNLEVEL; safecall;
|
|
procedure Set_RunLevel(pRunLevel: _TASK_RUNLEVEL); safecall;
|
|
property Id: WideString read Get_Id write Set_Id;
|
|
property DisplayName: WideString read Get_DisplayName write Set_DisplayName;
|
|
property UserId: WideString read Get_UserId write Set_UserId;
|
|
property LogonType: _TASK_LOGON_TYPE read Get_LogonType write Set_LogonType;
|
|
property GroupId: WideString read Get_GroupId write Set_GroupId;
|
|
property RunLevel: _TASK_RUNLEVEL read Get_RunLevel write Set_RunLevel;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IPrincipalDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {D98D51E5-C9B4-496A-A9C1-18980261CF0F}
|
|
// *********************************************************************//
|
|
IPrincipalDisp = dispinterface
|
|
['{D98D51E5-C9B4-496A-A9C1-18980261CF0F}']
|
|
property Id: WideString dispid 1;
|
|
property DisplayName: WideString dispid 2;
|
|
property UserId: WideString dispid 3;
|
|
property LogonType: _TASK_LOGON_TYPE dispid 4;
|
|
property GroupId: WideString dispid 5;
|
|
property RunLevel: _TASK_RUNLEVEL dispid 6;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IActionCollection
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {02820E19-7B98-4ED2-B2E8-FDCCCEFF619B}
|
|
// *********************************************************************//
|
|
IActionCollection = interface(IDispatch)
|
|
['{02820E19-7B98-4ED2-B2E8-FDCCCEFF619B}']
|
|
function Get_Count: Integer; safecall;
|
|
function Get_Item(index: Integer): IAction; safecall;
|
|
function Get__NewEnum: IUnknown; safecall;
|
|
function Get_XmlText: WideString; safecall;
|
|
procedure Set_XmlText(const pText: WideString); safecall;
|
|
function Create(Type_: _TASK_ACTION_TYPE): IAction; safecall;
|
|
procedure Remove(index: OleVariant); safecall;
|
|
procedure Clear; safecall;
|
|
function Get_Context: WideString; safecall;
|
|
procedure Set_Context(const pContext: WideString); safecall;
|
|
property Count: Integer read Get_Count;
|
|
property Item[index: Integer]: IAction read Get_Item; default;
|
|
property _NewEnum: IUnknown read Get__NewEnum;
|
|
property XmlText: WideString read Get_XmlText write Set_XmlText;
|
|
property Context: WideString read Get_Context write Set_Context;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IActionCollectionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {02820E19-7B98-4ED2-B2E8-FDCCCEFF619B}
|
|
// *********************************************************************//
|
|
IActionCollectionDisp = dispinterface
|
|
['{02820E19-7B98-4ED2-B2E8-FDCCCEFF619B}']
|
|
property Count: Integer readonly dispid 1;
|
|
property Item[index: Integer]: IAction readonly dispid 0; default;
|
|
property _NewEnum: IUnknown readonly dispid -4;
|
|
property XmlText: WideString dispid 2;
|
|
function Create(Type_: _TASK_ACTION_TYPE): IAction; dispid 3;
|
|
procedure Remove(index: OleVariant); dispid 4;
|
|
procedure Clear; dispid 5;
|
|
property Context: WideString dispid 6;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IAction
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {BAE54997-48B1-4CBE-9965-D6BE263EBEA4}
|
|
// *********************************************************************//
|
|
IAction = interface(IDispatch)
|
|
['{BAE54997-48B1-4CBE-9965-D6BE263EBEA4}']
|
|
function Get_Id: WideString; safecall;
|
|
procedure Set_Id(const pId: WideString); safecall;
|
|
function Get_type_: _TASK_ACTION_TYPE; safecall;
|
|
property Id: WideString read Get_Id write Set_Id;
|
|
property type_: _TASK_ACTION_TYPE read Get_type_;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IActionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {BAE54997-48B1-4CBE-9965-D6BE263EBEA4}
|
|
// *********************************************************************//
|
|
IActionDisp = dispinterface
|
|
['{BAE54997-48B1-4CBE-9965-D6BE263EBEA4}']
|
|
property Id: WideString dispid 1;
|
|
property type_: _TASK_ACTION_TYPE readonly dispid 2;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRegisteredTaskCollection
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {86627EB4-42A7-41E4-A4D9-AC33A72F2D52}
|
|
// *********************************************************************//
|
|
IRegisteredTaskCollection = interface(IDispatch)
|
|
['{86627EB4-42A7-41E4-A4D9-AC33A72F2D52}']
|
|
function Get_Count: Integer; safecall;
|
|
function Get_Item(index: OleVariant): IRegisteredTask; safecall;
|
|
function Get__NewEnum: IUnknown; safecall;
|
|
property Count: Integer read Get_Count;
|
|
property Item[index: OleVariant]: IRegisteredTask read Get_Item; default;
|
|
property _NewEnum: IUnknown read Get__NewEnum;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRegisteredTaskCollectionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {86627EB4-42A7-41E4-A4D9-AC33A72F2D52}
|
|
// *********************************************************************//
|
|
IRegisteredTaskCollectionDisp = dispinterface
|
|
['{86627EB4-42A7-41E4-A4D9-AC33A72F2D52}']
|
|
property Count: Integer readonly dispid 1610743808;
|
|
property Item[index: OleVariant]: IRegisteredTask readonly dispid 0; default;
|
|
property _NewEnum: IUnknown readonly dispid -4;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskService
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {2FABA4C7-4DA9-4013-9697-20CC3FD40F85}
|
|
// *********************************************************************//
|
|
ITaskService = interface(IDispatch)
|
|
['{2FABA4C7-4DA9-4013-9697-20CC3FD40F85}']
|
|
function GetFolder(const Path: WideString): ITaskFolder; safecall;
|
|
function GetRunningTasks(flags: Integer): IRunningTaskCollection; safecall;
|
|
function NewTask(flags: LongWord): ITaskDefinition; safecall;
|
|
procedure Connect(serverName: OleVariant; user: OleVariant; domain: OleVariant;
|
|
password: OleVariant); safecall;
|
|
function Get_Connected: WordBool; safecall;
|
|
function Get_TargetServer: WideString; safecall;
|
|
function Get_ConnectedUser: WideString; safecall;
|
|
function Get_ConnectedDomain: WideString; safecall;
|
|
function Get_HighestVersion: LongWord; safecall;
|
|
property Connected: WordBool read Get_Connected;
|
|
property TargetServer: WideString read Get_TargetServer;
|
|
property ConnectedUser: WideString read Get_ConnectedUser;
|
|
property ConnectedDomain: WideString read Get_ConnectedDomain;
|
|
property HighestVersion: LongWord read Get_HighestVersion;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskServiceDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {2FABA4C7-4DA9-4013-9697-20CC3FD40F85}
|
|
// *********************************************************************//
|
|
ITaskServiceDisp = dispinterface
|
|
['{2FABA4C7-4DA9-4013-9697-20CC3FD40F85}']
|
|
function GetFolder(const Path: WideString): ITaskFolder; dispid 1;
|
|
function GetRunningTasks(flags: Integer): IRunningTaskCollection; dispid 2;
|
|
function NewTask(flags: LongWord): ITaskDefinition; dispid 3;
|
|
procedure Connect(serverName: OleVariant; user: OleVariant; domain: OleVariant;
|
|
password: OleVariant); dispid 4;
|
|
property Connected: WordBool readonly dispid 5;
|
|
property TargetServer: WideString readonly dispid 0;
|
|
property ConnectedUser: WideString readonly dispid 6;
|
|
property ConnectedDomain: WideString readonly dispid 7;
|
|
property HighestVersion: LongWord readonly dispid 8;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskHandler
|
|
// Flags: (0)
|
|
// GUID: {839D7762-5121-4009-9234-4F0D19394F04}
|
|
// *********************************************************************//
|
|
ITaskHandler = interface(IUnknown)
|
|
['{839D7762-5121-4009-9234-4F0D19394F04}']
|
|
function Start(const pHandlerServices: IUnknown; const Data: WideString): HResult; stdcall;
|
|
function Stop(out pRetCode: HResult): HResult; stdcall;
|
|
function Pause: HResult; stdcall;
|
|
function Resume: HResult; stdcall;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskHandlerStatus
|
|
// Flags: (0)
|
|
// GUID: {EAEC7A8F-27A0-4DDC-8675-14726A01A38A}
|
|
// *********************************************************************//
|
|
ITaskHandlerStatus = interface(IUnknown)
|
|
['{EAEC7A8F-27A0-4DDC-8675-14726A01A38A}']
|
|
function UpdateStatus(percentComplete: Smallint; const statusMessage: WideString): HResult; stdcall;
|
|
function TaskCompleted(taskErrCode: HResult): HResult; stdcall;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskVariables
|
|
// Flags: (0)
|
|
// GUID: {3E4C9351-D966-4B8B-BB87-CEBA68BB0107}
|
|
// *********************************************************************//
|
|
ITaskVariables = interface(IUnknown)
|
|
['{3E4C9351-D966-4B8B-BB87-CEBA68BB0107}']
|
|
function GetInput(out pInput: WideString): HResult; stdcall;
|
|
function SetOutput(const input: WideString): HResult; stdcall;
|
|
function GetContext(out pContext: WideString): HResult; stdcall;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskNamedValuePair
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {39038068-2B46-4AFD-8662-7BB6F868D221}
|
|
// *********************************************************************//
|
|
ITaskNamedValuePair = interface(IDispatch)
|
|
['{39038068-2B46-4AFD-8662-7BB6F868D221}']
|
|
function Get_Name: WideString; safecall;
|
|
procedure Set_Name(const pName: WideString); safecall;
|
|
function Get_Value: WideString; safecall;
|
|
procedure Set_Value(const pValue: WideString); safecall;
|
|
property Name: WideString read Get_Name write Set_Name;
|
|
property Value: WideString read Get_Value write Set_Value;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskNamedValuePairDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {39038068-2B46-4AFD-8662-7BB6F868D221}
|
|
// *********************************************************************//
|
|
ITaskNamedValuePairDisp = dispinterface
|
|
['{39038068-2B46-4AFD-8662-7BB6F868D221}']
|
|
property Name: WideString dispid 0;
|
|
property Value: WideString dispid 1;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskNamedValueCollection
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {B4EF826B-63C3-46E4-A504-EF69E4F7EA4D}
|
|
// *********************************************************************//
|
|
ITaskNamedValueCollection = interface(IDispatch)
|
|
['{B4EF826B-63C3-46E4-A504-EF69E4F7EA4D}']
|
|
function Get_Count: Integer; safecall;
|
|
function Get_Item(index: Integer): ITaskNamedValuePair; safecall;
|
|
function Get__NewEnum: IUnknown; safecall;
|
|
function Create(const Name: WideString; const Value: WideString): ITaskNamedValuePair; safecall;
|
|
procedure Remove(index: Integer); safecall;
|
|
procedure Clear; safecall;
|
|
property Count: Integer read Get_Count;
|
|
property Item[index: Integer]: ITaskNamedValuePair read Get_Item; default;
|
|
property _NewEnum: IUnknown read Get__NewEnum;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskNamedValueCollectionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {B4EF826B-63C3-46E4-A504-EF69E4F7EA4D}
|
|
// *********************************************************************//
|
|
ITaskNamedValueCollectionDisp = dispinterface
|
|
['{B4EF826B-63C3-46E4-A504-EF69E4F7EA4D}']
|
|
property Count: Integer readonly dispid 1;
|
|
property Item[index: Integer]: ITaskNamedValuePair readonly dispid 0; default;
|
|
property _NewEnum: IUnknown readonly dispid -4;
|
|
function Create(const Name: WideString; const Value: WideString): ITaskNamedValuePair; dispid 2;
|
|
procedure Remove(index: Integer); dispid 4;
|
|
procedure Clear; dispid 5;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IIdleTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {D537D2B0-9FB3-4D34-9739-1FF5CE7B1EF3}
|
|
// *********************************************************************//
|
|
IIdleTrigger = interface(ITrigger)
|
|
['{D537D2B0-9FB3-4D34-9739-1FF5CE7B1EF3}']
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IIdleTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {D537D2B0-9FB3-4D34-9739-1FF5CE7B1EF3}
|
|
// *********************************************************************//
|
|
IIdleTriggerDisp = dispinterface
|
|
['{D537D2B0-9FB3-4D34-9739-1FF5CE7B1EF3}']
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ILogonTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {72DADE38-FAE4-4B3E-BAF4-5D009AF02B1C}
|
|
// *********************************************************************//
|
|
ILogonTrigger = interface(ITrigger)
|
|
['{72DADE38-FAE4-4B3E-BAF4-5D009AF02B1C}']
|
|
function Get_Delay: WideString; safecall;
|
|
procedure Set_Delay(const pDelay: WideString); safecall;
|
|
function Get_UserId: WideString; safecall;
|
|
procedure Set_UserId(const pUser: WideString); safecall;
|
|
property Delay: WideString read Get_Delay write Set_Delay;
|
|
property UserId: WideString read Get_UserId write Set_UserId;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ILogonTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {72DADE38-FAE4-4B3E-BAF4-5D009AF02B1C}
|
|
// *********************************************************************//
|
|
ILogonTriggerDisp = dispinterface
|
|
['{72DADE38-FAE4-4B3E-BAF4-5D009AF02B1C}']
|
|
property Delay: WideString dispid 20;
|
|
property UserId: WideString dispid 21;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ISessionStateChangeTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {754DA71B-4385-4475-9DD9-598294FA3641}
|
|
// *********************************************************************//
|
|
ISessionStateChangeTrigger = interface(ITrigger)
|
|
['{754DA71B-4385-4475-9DD9-598294FA3641}']
|
|
function Get_Delay: WideString; safecall;
|
|
procedure Set_Delay(const pDelay: WideString); safecall;
|
|
function Get_UserId: WideString; safecall;
|
|
procedure Set_UserId(const pUser: WideString); safecall;
|
|
function Get_StateChange: _TASK_SESSION_STATE_CHANGE_TYPE; safecall;
|
|
procedure Set_StateChange(pType: _TASK_SESSION_STATE_CHANGE_TYPE); safecall;
|
|
property Delay: WideString read Get_Delay write Set_Delay;
|
|
property UserId: WideString read Get_UserId write Set_UserId;
|
|
property StateChange: _TASK_SESSION_STATE_CHANGE_TYPE read Get_StateChange write Set_StateChange;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ISessionStateChangeTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {754DA71B-4385-4475-9DD9-598294FA3641}
|
|
// *********************************************************************//
|
|
ISessionStateChangeTriggerDisp = dispinterface
|
|
['{754DA71B-4385-4475-9DD9-598294FA3641}']
|
|
property Delay: WideString dispid 20;
|
|
property UserId: WideString dispid 21;
|
|
property StateChange: _TASK_SESSION_STATE_CHANGE_TYPE dispid 22;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IEventTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {D45B0167-9653-4EEF-B94F-0732CA7AF251}
|
|
// *********************************************************************//
|
|
IEventTrigger = interface(ITrigger)
|
|
['{D45B0167-9653-4EEF-B94F-0732CA7AF251}']
|
|
function Get_Subscription: WideString; safecall;
|
|
procedure Set_Subscription(const pQuery: WideString); safecall;
|
|
function Get_Delay: WideString; safecall;
|
|
procedure Set_Delay(const pDelay: WideString); safecall;
|
|
function Get_ValueQueries: ITaskNamedValueCollection; safecall;
|
|
procedure Set_ValueQueries(const ppNamedXPaths: ITaskNamedValueCollection); safecall;
|
|
property Subscription: WideString read Get_Subscription write Set_Subscription;
|
|
property Delay: WideString read Get_Delay write Set_Delay;
|
|
property ValueQueries: ITaskNamedValueCollection read Get_ValueQueries write Set_ValueQueries;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IEventTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {D45B0167-9653-4EEF-B94F-0732CA7AF251}
|
|
// *********************************************************************//
|
|
IEventTriggerDisp = dispinterface
|
|
['{D45B0167-9653-4EEF-B94F-0732CA7AF251}']
|
|
property Subscription: WideString dispid 20;
|
|
property Delay: WideString dispid 21;
|
|
property ValueQueries: ITaskNamedValueCollection dispid 22;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITimeTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {B45747E0-EBA7-4276-9F29-85C5BB300006}
|
|
// *********************************************************************//
|
|
ITimeTrigger = interface(ITrigger)
|
|
['{B45747E0-EBA7-4276-9F29-85C5BB300006}']
|
|
function Get_RandomDelay: WideString; safecall;
|
|
procedure Set_RandomDelay(const pRandomDelay: WideString); safecall;
|
|
property RandomDelay: WideString read Get_RandomDelay write Set_RandomDelay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITimeTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {B45747E0-EBA7-4276-9F29-85C5BB300006}
|
|
// *********************************************************************//
|
|
ITimeTriggerDisp = dispinterface
|
|
['{B45747E0-EBA7-4276-9F29-85C5BB300006}']
|
|
property RandomDelay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IDailyTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {126C5CD8-B288-41D5-8DBF-E491446ADC5C}
|
|
// *********************************************************************//
|
|
IDailyTrigger = interface(ITrigger)
|
|
['{126C5CD8-B288-41D5-8DBF-E491446ADC5C}']
|
|
function Get_DaysInterval: Smallint; safecall;
|
|
procedure Set_DaysInterval(pDays: Smallint); safecall;
|
|
function Get_RandomDelay: WideString; safecall;
|
|
procedure Set_RandomDelay(const pRandomDelay: WideString); safecall;
|
|
property DaysInterval: Smallint read Get_DaysInterval write Set_DaysInterval;
|
|
property RandomDelay: WideString read Get_RandomDelay write Set_RandomDelay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IDailyTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {126C5CD8-B288-41D5-8DBF-E491446ADC5C}
|
|
// *********************************************************************//
|
|
IDailyTriggerDisp = dispinterface
|
|
['{126C5CD8-B288-41D5-8DBF-E491446ADC5C}']
|
|
property DaysInterval: Smallint dispid 25;
|
|
property RandomDelay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IWeeklyTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {5038FC98-82FF-436D-8728-A512A57C9DC1}
|
|
// *********************************************************************//
|
|
IWeeklyTrigger = interface(ITrigger)
|
|
['{5038FC98-82FF-436D-8728-A512A57C9DC1}']
|
|
function Get_DaysOfWeek: Smallint; safecall;
|
|
procedure Set_DaysOfWeek(pDays: Smallint); safecall;
|
|
function Get_WeeksInterval: Smallint; safecall;
|
|
procedure Set_WeeksInterval(pWeeks: Smallint); safecall;
|
|
function Get_RandomDelay: WideString; safecall;
|
|
procedure Set_RandomDelay(const pRandomDelay: WideString); safecall;
|
|
property DaysOfWeek: Smallint read Get_DaysOfWeek write Set_DaysOfWeek;
|
|
property WeeksInterval: Smallint read Get_WeeksInterval write Set_WeeksInterval;
|
|
property RandomDelay: WideString read Get_RandomDelay write Set_RandomDelay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IWeeklyTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {5038FC98-82FF-436D-8728-A512A57C9DC1}
|
|
// *********************************************************************//
|
|
IWeeklyTriggerDisp = dispinterface
|
|
['{5038FC98-82FF-436D-8728-A512A57C9DC1}']
|
|
property DaysOfWeek: Smallint dispid 25;
|
|
property WeeksInterval: Smallint dispid 26;
|
|
property RandomDelay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IMonthlyTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {97C45EF1-6B02-4A1A-9C0E-1EBFBA1500AC}
|
|
// *********************************************************************//
|
|
IMonthlyTrigger = interface(ITrigger)
|
|
['{97C45EF1-6B02-4A1A-9C0E-1EBFBA1500AC}']
|
|
function Get_DaysOfMonth: Integer; safecall;
|
|
procedure Set_DaysOfMonth(pDays: Integer); safecall;
|
|
function Get_MonthsOfYear: Smallint; safecall;
|
|
procedure Set_MonthsOfYear(pMonths: Smallint); safecall;
|
|
function Get_RunOnLastDayOfMonth: WordBool; safecall;
|
|
procedure Set_RunOnLastDayOfMonth(pLastDay: WordBool); safecall;
|
|
function Get_RandomDelay: WideString; safecall;
|
|
procedure Set_RandomDelay(const pRandomDelay: WideString); safecall;
|
|
property DaysOfMonth: Integer read Get_DaysOfMonth write Set_DaysOfMonth;
|
|
property MonthsOfYear: Smallint read Get_MonthsOfYear write Set_MonthsOfYear;
|
|
property RunOnLastDayOfMonth: WordBool read Get_RunOnLastDayOfMonth write Set_RunOnLastDayOfMonth;
|
|
property RandomDelay: WideString read Get_RandomDelay write Set_RandomDelay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IMonthlyTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {97C45EF1-6B02-4A1A-9C0E-1EBFBA1500AC}
|
|
// *********************************************************************//
|
|
IMonthlyTriggerDisp = dispinterface
|
|
['{97C45EF1-6B02-4A1A-9C0E-1EBFBA1500AC}']
|
|
property DaysOfMonth: Integer dispid 25;
|
|
property MonthsOfYear: Smallint dispid 26;
|
|
property RunOnLastDayOfMonth: WordBool dispid 27;
|
|
property RandomDelay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IMonthlyDOWTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {77D025A3-90FA-43AA-B52E-CDA5499B946A}
|
|
// *********************************************************************//
|
|
IMonthlyDOWTrigger = interface(ITrigger)
|
|
['{77D025A3-90FA-43AA-B52E-CDA5499B946A}']
|
|
function Get_DaysOfWeek: Smallint; safecall;
|
|
procedure Set_DaysOfWeek(pDays: Smallint); safecall;
|
|
function Get_WeeksOfMonth: Smallint; safecall;
|
|
procedure Set_WeeksOfMonth(pWeeks: Smallint); safecall;
|
|
function Get_MonthsOfYear: Smallint; safecall;
|
|
procedure Set_MonthsOfYear(pMonths: Smallint); safecall;
|
|
function Get_RunOnLastWeekOfMonth: WordBool; safecall;
|
|
procedure Set_RunOnLastWeekOfMonth(pLastWeek: WordBool); safecall;
|
|
function Get_RandomDelay: WideString; safecall;
|
|
procedure Set_RandomDelay(const pRandomDelay: WideString); safecall;
|
|
property DaysOfWeek: Smallint read Get_DaysOfWeek write Set_DaysOfWeek;
|
|
property WeeksOfMonth: Smallint read Get_WeeksOfMonth write Set_WeeksOfMonth;
|
|
property MonthsOfYear: Smallint read Get_MonthsOfYear write Set_MonthsOfYear;
|
|
property RunOnLastWeekOfMonth: WordBool read Get_RunOnLastWeekOfMonth write Set_RunOnLastWeekOfMonth;
|
|
property RandomDelay: WideString read Get_RandomDelay write Set_RandomDelay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IMonthlyDOWTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {77D025A3-90FA-43AA-B52E-CDA5499B946A}
|
|
// *********************************************************************//
|
|
IMonthlyDOWTriggerDisp = dispinterface
|
|
['{77D025A3-90FA-43AA-B52E-CDA5499B946A}']
|
|
property DaysOfWeek: Smallint dispid 25;
|
|
property WeeksOfMonth: Smallint dispid 26;
|
|
property MonthsOfYear: Smallint dispid 27;
|
|
property RunOnLastWeekOfMonth: WordBool dispid 28;
|
|
property RandomDelay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IBootTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {2A9C35DA-D357-41F4-BBC1-207AC1B1F3CB}
|
|
// *********************************************************************//
|
|
IBootTrigger = interface(ITrigger)
|
|
['{2A9C35DA-D357-41F4-BBC1-207AC1B1F3CB}']
|
|
function Get_Delay: WideString; safecall;
|
|
procedure Set_Delay(const pDelay: WideString); safecall;
|
|
property Delay: WideString read Get_Delay write Set_Delay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IBootTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {2A9C35DA-D357-41F4-BBC1-207AC1B1F3CB}
|
|
// *********************************************************************//
|
|
IBootTriggerDisp = dispinterface
|
|
['{2A9C35DA-D357-41F4-BBC1-207AC1B1F3CB}']
|
|
property Delay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IRegistrationTrigger
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {4C8FEC3A-C218-4E0C-B23D-629024DB91A2}
|
|
// *********************************************************************//
|
|
IRegistrationTrigger = interface(ITrigger)
|
|
['{4C8FEC3A-C218-4E0C-B23D-629024DB91A2}']
|
|
function Get_Delay: WideString; safecall;
|
|
procedure Set_Delay(const pDelay: WideString); safecall;
|
|
property Delay: WideString read Get_Delay write Set_Delay;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IRegistrationTriggerDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {4C8FEC3A-C218-4E0C-B23D-629024DB91A2}
|
|
// *********************************************************************//
|
|
IRegistrationTriggerDisp = dispinterface
|
|
['{4C8FEC3A-C218-4E0C-B23D-629024DB91A2}']
|
|
property Delay: WideString dispid 20;
|
|
property type_: _TASK_TRIGGER_TYPE2 readonly dispid 1;
|
|
property Id: WideString dispid 2;
|
|
property Repetition: IRepetitionPattern dispid 3;
|
|
property ExecutionTimeLimit: WideString dispid 4;
|
|
property StartBoundary: WideString dispid 5;
|
|
property EndBoundary: WideString dispid 6;
|
|
property Enabled: WordBool dispid 7;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IExecAction
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {4C3D624D-FD6B-49A3-B9B7-09CB3CD3F047}
|
|
// *********************************************************************//
|
|
IExecAction = interface(IAction)
|
|
['{4C3D624D-FD6B-49A3-B9B7-09CB3CD3F047}']
|
|
function Get_Path: WideString; safecall;
|
|
procedure Set_Path(const pPath: WideString); safecall;
|
|
function Get_Arguments: WideString; safecall;
|
|
procedure Set_Arguments(const pArgument: WideString); safecall;
|
|
function Get_WorkingDirectory: WideString; safecall;
|
|
procedure Set_WorkingDirectory(const pWorkingDirectory: WideString); safecall;
|
|
property Path: WideString read Get_Path write Set_Path;
|
|
property Arguments: WideString read Get_Arguments write Set_Arguments;
|
|
property WorkingDirectory: WideString read Get_WorkingDirectory write Set_WorkingDirectory;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IExecActionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {4C3D624D-FD6B-49A3-B9B7-09CB3CD3F047}
|
|
// *********************************************************************//
|
|
IExecActionDisp = dispinterface
|
|
['{4C3D624D-FD6B-49A3-B9B7-09CB3CD3F047}']
|
|
property Path: WideString dispid 10;
|
|
property Arguments: WideString dispid 11;
|
|
property WorkingDirectory: WideString dispid 12;
|
|
property Id: WideString dispid 1;
|
|
property type_: _TASK_ACTION_TYPE readonly dispid 2;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IShowMessageAction
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {505E9E68-AF89-46B8-A30F-56162A83D537}
|
|
// *********************************************************************//
|
|
IShowMessageAction = interface(IAction)
|
|
['{505E9E68-AF89-46B8-A30F-56162A83D537}']
|
|
function Get_Title: WideString; safecall;
|
|
procedure Set_Title(const pTitle: WideString); safecall;
|
|
function Get_MessageBody: WideString; safecall;
|
|
procedure Set_MessageBody(const pMessageBody: WideString); safecall;
|
|
property Title: WideString read Get_Title write Set_Title;
|
|
property MessageBody: WideString read Get_MessageBody write Set_MessageBody;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IShowMessageActionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {505E9E68-AF89-46B8-A30F-56162A83D537}
|
|
// *********************************************************************//
|
|
IShowMessageActionDisp = dispinterface
|
|
['{505E9E68-AF89-46B8-A30F-56162A83D537}']
|
|
property Title: WideString dispid 10;
|
|
property MessageBody: WideString dispid 11;
|
|
property Id: WideString dispid 1;
|
|
property type_: _TASK_ACTION_TYPE readonly dispid 2;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IComHandlerAction
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {6D2FD252-75C5-4F66-90BA-2A7D8CC3039F}
|
|
// *********************************************************************//
|
|
IComHandlerAction = interface(IAction)
|
|
['{6D2FD252-75C5-4F66-90BA-2A7D8CC3039F}']
|
|
function Get_ClassId: WideString; safecall;
|
|
procedure Set_ClassId(const pClsid: WideString); safecall;
|
|
function Get_Data: WideString; safecall;
|
|
procedure Set_Data(const pData: WideString); safecall;
|
|
property ClassId: WideString read Get_ClassId write Set_ClassId;
|
|
property Data: WideString read Get_Data write Set_Data;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IComHandlerActionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {6D2FD252-75C5-4F66-90BA-2A7D8CC3039F}
|
|
// *********************************************************************//
|
|
IComHandlerActionDisp = dispinterface
|
|
['{6D2FD252-75C5-4F66-90BA-2A7D8CC3039F}']
|
|
property ClassId: WideString dispid 10;
|
|
property Data: WideString dispid 11;
|
|
property Id: WideString dispid 1;
|
|
property type_: _TASK_ACTION_TYPE readonly dispid 2;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: IEmailAction
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {10F62C64-7E16-4314-A0C2-0C3683F99D40}
|
|
// *********************************************************************//
|
|
IEmailAction = interface(IAction)
|
|
['{10F62C64-7E16-4314-A0C2-0C3683F99D40}']
|
|
function Get_Server: WideString; safecall;
|
|
procedure Set_Server(const pServer: WideString); safecall;
|
|
function Get_Subject: WideString; safecall;
|
|
procedure Set_Subject(const pSubject: WideString); safecall;
|
|
function Get_To_: WideString; safecall;
|
|
procedure Set_To_(const pTo: WideString); safecall;
|
|
function Get_Cc: WideString; safecall;
|
|
procedure Set_Cc(const pCc: WideString); safecall;
|
|
function Get_Bcc: WideString; safecall;
|
|
procedure Set_Bcc(const pBcc: WideString); safecall;
|
|
function Get_ReplyTo: WideString; safecall;
|
|
procedure Set_ReplyTo(const pReplyTo: WideString); safecall;
|
|
function Get_From: WideString; safecall;
|
|
procedure Set_From(const pFrom: WideString); safecall;
|
|
function Get_HeaderFields: ITaskNamedValueCollection; safecall;
|
|
procedure Set_HeaderFields(const ppHeaderFields: ITaskNamedValueCollection); safecall;
|
|
function Get_Body: WideString; safecall;
|
|
procedure Set_Body(const pBody: WideString); safecall;
|
|
function Get_Attachments: PSafeArray; safecall;
|
|
procedure Set_Attachments(pAttachements: PSafeArray); safecall;
|
|
property Server: WideString read Get_Server write Set_Server;
|
|
property Subject: WideString read Get_Subject write Set_Subject;
|
|
property To_: WideString read Get_To_ write Set_To_;
|
|
property Cc: WideString read Get_Cc write Set_Cc;
|
|
property Bcc: WideString read Get_Bcc write Set_Bcc;
|
|
property ReplyTo: WideString read Get_ReplyTo write Set_ReplyTo;
|
|
property From: WideString read Get_From write Set_From;
|
|
property HeaderFields: ITaskNamedValueCollection read Get_HeaderFields write Set_HeaderFields;
|
|
property Body: WideString read Get_Body write Set_Body;
|
|
property Attachments: PSafeArray read Get_Attachments write Set_Attachments;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: IEmailActionDisp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {10F62C64-7E16-4314-A0C2-0C3683F99D40}
|
|
// *********************************************************************//
|
|
IEmailActionDisp = dispinterface
|
|
['{10F62C64-7E16-4314-A0C2-0C3683F99D40}']
|
|
property Server: WideString dispid 10;
|
|
property Subject: WideString dispid 11;
|
|
property To_: WideString dispid 12;
|
|
property Cc: WideString dispid 13;
|
|
property Bcc: WideString dispid 14;
|
|
property ReplyTo: WideString dispid 15;
|
|
property From: WideString dispid 16;
|
|
property HeaderFields: ITaskNamedValueCollection dispid 17;
|
|
property Body: WideString dispid 18;
|
|
property Attachments: {??PSafeArray}OleVariant dispid 19;
|
|
property Id: WideString dispid 1;
|
|
property type_: _TASK_ACTION_TYPE readonly dispid 2;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// Interface: ITaskSettings2
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {2C05C3F0-6EED-4C05-A15F-ED7D7A98A369}
|
|
// *********************************************************************//
|
|
ITaskSettings2 = interface(IDispatch)
|
|
['{2C05C3F0-6EED-4C05-A15F-ED7D7A98A369}']
|
|
function Get_DisallowStartOnRemoteAppSession: WordBool; safecall;
|
|
procedure Set_DisallowStartOnRemoteAppSession(pDisallowStart: WordBool); safecall;
|
|
function Get_UseUnifiedSchedulingEngine: WordBool; safecall;
|
|
procedure Set_UseUnifiedSchedulingEngine(pUseUnifiedEngine: WordBool); safecall;
|
|
property DisallowStartOnRemoteAppSession: WordBool read Get_DisallowStartOnRemoteAppSession write Set_DisallowStartOnRemoteAppSession;
|
|
property UseUnifiedSchedulingEngine: WordBool read Get_UseUnifiedSchedulingEngine write Set_UseUnifiedSchedulingEngine;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// DispIntf: ITaskSettings2Disp
|
|
// Flags: (4544) Dual NonExtensible OleAutomation Dispatchable
|
|
// GUID: {2C05C3F0-6EED-4C05-A15F-ED7D7A98A369}
|
|
// *********************************************************************//
|
|
ITaskSettings2Disp = dispinterface
|
|
['{2C05C3F0-6EED-4C05-A15F-ED7D7A98A369}']
|
|
property DisallowStartOnRemoteAppSession: WordBool dispid 30;
|
|
property UseUnifiedSchedulingEngine: WordBool dispid 31;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// The Class CoTaskScheduler_ provides a Create and CreateRemote method to
|
|
// create instances of the default interface ITaskService exposed by
|
|
// the CoClass TaskScheduler_. The functions are intended to be used by
|
|
// clients wishing to automate the CoClass objects exposed by the
|
|
// server of this typelibrary.
|
|
// *********************************************************************//
|
|
CoTaskScheduler_ = class
|
|
class function Create: ITaskService;
|
|
class function CreateRemote(const MachineName: string): ITaskService;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// The Class CoTaskHandlerPS provides a Create and CreateRemote method to
|
|
// create instances of the default interface ITaskHandler exposed by
|
|
// the CoClass TaskHandlerPS. The functions are intended to be used by
|
|
// clients wishing to automate the CoClass objects exposed by the
|
|
// server of this typelibrary.
|
|
// *********************************************************************//
|
|
CoTaskHandlerPS = class
|
|
class function Create: ITaskHandler;
|
|
class function CreateRemote(const MachineName: string): ITaskHandler;
|
|
end;
|
|
|
|
// *********************************************************************//
|
|
// The Class CoTaskHandlerStatusPS provides a Create and CreateRemote method to
|
|
// create instances of the default interface ITaskHandlerStatus exposed by
|
|
// the CoClass TaskHandlerStatusPS. The functions are intended to be used by
|
|
// clients wishing to automate the CoClass objects exposed by the
|
|
// server of this typelibrary.
|
|
// *********************************************************************//
|
|
CoTaskHandlerStatusPS = class
|
|
class function Create: ITaskHandlerStatus;
|
|
class function CreateRemote(const MachineName: string): ITaskHandlerStatus;
|
|
end;
|
|
|
|
TTaskState = (tsUnknown, tsDisabled, tsQueued, tsReady, tsRunning);
|
|
|
|
TTaskActionType = (taExec, taCOMHandler = 5, taSendEMail = 6, taShowMessage = 7);
|
|
|
|
TTSTask = record
|
|
Name,
|
|
Path,
|
|
Description,
|
|
Author,
|
|
Version,
|
|
ImagePath,
|
|
Args: string;
|
|
LastRun,
|
|
NextRun: TDateTime;
|
|
Logon,
|
|
Boot,
|
|
Enabled: Boolean;
|
|
Status: TTaskState;
|
|
Delay: string;
|
|
end;
|
|
TTSTasks = array of TTSTask;
|
|
|
|
procedure GetTaskList(var AList: TTSTasks);
|
|
function AddAutorunTask(const AName,AAuthor,ADesc,APath,AArgs,AUser: string; ADelay: string = 'PT0S'; AHighestPrivs: boolean = False): boolean;
|
|
function DeleteTask(const AName: string): boolean;
|
|
|
|
implementation
|
|
|
|
uses {$IFDEF RAD9PLUS}
|
|
System.Win.ComObj, System.SysUtils
|
|
{$ELSE}
|
|
ComObj, SysUtils
|
|
{$ENDIF};
|
|
|
|
class function CoTaskScheduler_.Create: ITaskService;
|
|
begin
|
|
Result := CreateComObject(CLASS_TaskScheduler_) as ITaskService;
|
|
end;
|
|
|
|
class function CoTaskScheduler_.CreateRemote(const MachineName: string): ITaskService;
|
|
begin
|
|
Result := CreateRemoteComObject(MachineName, CLASS_TaskScheduler_) as ITaskService;
|
|
end;
|
|
|
|
class function CoTaskHandlerPS.Create: ITaskHandler;
|
|
begin
|
|
Result := CreateComObject(CLASS_TaskHandlerPS) as ITaskHandler;
|
|
end;
|
|
|
|
class function CoTaskHandlerPS.CreateRemote(const MachineName: string): ITaskHandler;
|
|
begin
|
|
Result := CreateRemoteComObject(MachineName, CLASS_TaskHandlerPS) as ITaskHandler;
|
|
end;
|
|
|
|
class function CoTaskHandlerStatusPS.Create: ITaskHandlerStatus;
|
|
begin
|
|
Result := CreateComObject(CLASS_TaskHandlerStatusPS) as ITaskHandlerStatus;
|
|
end;
|
|
|
|
class function CoTaskHandlerStatusPS.CreateRemote(const MachineName: string): ITaskHandlerStatus;
|
|
begin
|
|
Result := CreateRemoteComObject(MachineName, CLASS_TaskHandlerStatusPS) as ITaskHandlerStatus;
|
|
end;
|
|
|
|
procedure GetTaskList(var AList: TTSTasks);
|
|
var
|
|
TS: ITaskService;
|
|
RF: ITaskFolder;
|
|
RTC: IRegisteredTaskCollection;
|
|
|
|
procedure GetTasks(AFolder: ITaskFolder);
|
|
var
|
|
i,j: integer;
|
|
TFC: ITaskFolderCollection;
|
|
TD: ITaskDefinition;
|
|
RI: IRegistrationInfo;
|
|
AC: IActionCollection;
|
|
EA: IExecAction;
|
|
TC: ITriggerCollection;
|
|
r: TTSTask;
|
|
begin
|
|
RTC:=AFolder.GetTasks(1);
|
|
for i:=1 to RTC.Count do begin
|
|
Finalize(r);
|
|
Zeromemory(@r,SizeOf(r));
|
|
r.Name:=RTC.Item[i].Name;
|
|
r.Path:=RTC.Item[i].Path;
|
|
r.LastRun:=RTC.Item[i].LastRunTime;
|
|
r.NextRun:=RTC.Item[i].NextRunTime;
|
|
r.Status:=TTaskState(RTC.Item[i].State);
|
|
r.Enabled:=RTC.Item[i].Enabled;
|
|
|
|
try
|
|
TD:=RTC[i].Definition;
|
|
except
|
|
Continue;
|
|
end;
|
|
RI:=TD.RegistrationInfo;
|
|
r.Description:=RI.Description;
|
|
r.Author:=RI.Author;
|
|
r.Version:=RI.Version;
|
|
AC:=TD.Actions;
|
|
for j:=1 to AC.Count do
|
|
if AC.Item[j].type_=TASK_ACTION_EXEC then begin
|
|
EA:=AC.Item[j] as IExecAction;
|
|
r.ImagePath:=EA.Path;
|
|
r.Args:=EA.Arguments;
|
|
Break;
|
|
end;
|
|
|
|
TC:=TD.Triggers;
|
|
for j:=1 to TC.Count do
|
|
if TC.Item[j].type_=TASK_TRIGGER_BOOT then begin
|
|
r.Boot:=True;
|
|
r.Delay:=IBootTrigger(TC.Item[j]).Delay;
|
|
end else if TC.Item[j].type_=TASK_TRIGGER_LOGON then begin
|
|
r.Logon:=True;
|
|
r.Delay:=ILogonTrigger(TC.Item[j]).Delay;
|
|
end;
|
|
|
|
SetLength(AList,Length(AList)+1);
|
|
AList[High(AList)]:=r;
|
|
end;
|
|
TFC:=AFolder.GetFolders(0);
|
|
for i:=1 to TFC.Count do
|
|
GetTasks(TFC.Item[i]);
|
|
end;
|
|
|
|
begin
|
|
Finalize(AList);
|
|
CoInitialize(nil);
|
|
try
|
|
TS:=nil;
|
|
CoCreateInstance(CLASS_TaskScheduler_, nil, CLSCTX_INPROC_SERVER or CLSCTX_LOCAL_SERVER, IUnknown, TS);
|
|
if not Assigned(TS) then
|
|
Exit;
|
|
TS.Connect(null,null,null,null);
|
|
RF:=TS.GetFolder('\');
|
|
GetTasks(RF);
|
|
finally
|
|
CoUninitialize;
|
|
end;
|
|
end;
|
|
|
|
function AddAutorunTask(const AName,AAuthor,ADesc,APath,AArgs,AUser: string; ADelay: string = 'PT0S'; AHighestPrivs: boolean = False): boolean;
|
|
var
|
|
TS: ITaskService;
|
|
tf: ITaskFolder;
|
|
task : ITaskDefinition;
|
|
action: IExecAction;
|
|
trigger: ILogonTrigger;
|
|
RegisteredTask: IRegisteredTask;
|
|
begin
|
|
Result:=False;
|
|
CoInitialize(nil);
|
|
try
|
|
TS:=nil;
|
|
CoCreateInstance(CLASS_TaskScheduler_, nil, CLSCTX_INPROC_SERVER or CLSCTX_LOCAL_SERVER, IUnknown, TS);
|
|
if not Assigned(TS) then
|
|
Exit;
|
|
TS.Connect(null,null,null,null);
|
|
tf:=ts.GetFolder('\');
|
|
try
|
|
tf.DeleteTask(WideString(AName),0);
|
|
except
|
|
end;
|
|
task:=TS.NewTask(0);
|
|
task.RegistrationInfo.Author:=WideString(AAuthor);
|
|
task.RegistrationInfo.Description:=WideString(ADesc);
|
|
|
|
task.Settings.AllowDemandStart:=True;
|
|
task.Settings.Enabled:=True;
|
|
task.Settings.Hidden:=False;
|
|
task.Settings.StartWhenAvailable:=True;
|
|
task.Settings.DisallowStartIfOnBatteries:=False;
|
|
task.Settings.StopIfGoingOnBatteries:=False;
|
|
task.Settings.AllowHardTerminate:=False;
|
|
task.Settings.ExecutionTimeLimit:=WideString('PT0S');
|
|
|
|
if AHighestPrivs then
|
|
task.Principal.RunLevel:=TASK_RUNLEVEL_HIGHEST;
|
|
|
|
action:=task.Actions.Create(_TASK_ACTION_TYPE(TASK_ACTION_EXEC)) as IExecAction;
|
|
action.Path:=WideString(APath);
|
|
action.WorkingDirectory:=WideString(ExtractFilePath(action.Path));
|
|
action.Arguments:=WideString(AArgs);
|
|
|
|
trigger:=task.Triggers.Create(_TASK_TRIGGER_TYPE2(TASK_TRIGGER_LOGON)) as ILogonTrigger;
|
|
trigger.Id:=WideString(AName);
|
|
trigger.UserId:=WideString(AUser);
|
|
trigger.StartBoundary:='';;
|
|
trigger.EndBoundary:='';
|
|
trigger.Enabled:=True;
|
|
trigger.Delay:=WideString(ADelay);
|
|
|
|
try RegisteredTask:=tf.RegisterTaskDefinition(WideString(AName),task,TASK_CREATE_OR_UPDATE,WideString(''),WideString(''),TASK_LOGON_NONE,WideString('')) except end;
|
|
Result:=Assigned(RegisteredTask);
|
|
finally
|
|
CoUninitialize;
|
|
end;
|
|
end;
|
|
|
|
function DeleteTask(const AName: string): boolean;
|
|
var
|
|
TS: ITaskService;
|
|
tf: ITaskFolder;
|
|
begin
|
|
Result:=False;
|
|
CoInitialize(nil);
|
|
try
|
|
TS:=nil;
|
|
CoCreateInstance(CLASS_TaskScheduler_, nil, CLSCTX_INPROC_SERVER or CLSCTX_LOCAL_SERVER, IUnknown, TS);
|
|
if not Assigned(TS) then
|
|
Exit;
|
|
TS.Connect(null,null,null,null);
|
|
tf:=ts.GetFolder('\');
|
|
try
|
|
tf.DeleteTask(WideString(AName),0);
|
|
Result:=True;
|
|
except
|
|
end;
|
|
finally
|
|
CoUninitialize;
|
|
end;
|
|
end;
|
|
|
|
end.
|