@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: Part of the Task Scheduler 1.0 Interfaces, which consists of IEnumWorkItems, ITask, ITaskScheduler, ITaskTrigger and IScheduledWorkItem. The C# definition contains some helper code. Not all methods have been tested, so be careful! !!!!C# Definition: [Guid("148BD52B-A2AB-11CE-B11F-00AA00530503"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] public interface ITaskTrigger { int SetTrigger( ref TASK_TRIGGER pTrigger); int GetTrigger( ref TASK_TRIGGER pTrigger); int GetTriggerString([MarshalAs(UnmanagedType.LPWStr)] out string wszTrigger); }; public enum TASK_TRIGGER_TYPE { TASK_TIME_TRIGGER_ONCE = 0, // Ignore the Type field. TASK_TIME_TRIGGER_DAILY = 1, // Use DAILY TASK_TIME_TRIGGER_WEEKLY = 2, // Use WEEKLY TASK_TIME_TRIGGER_MONTHLYDATE = 3, // Use MONTHLYDATE TASK_TIME_TRIGGER_MONTHLYDOW = 4, // Use MONTHLYDOW TASK_EVENT_TRIGGER_ON_IDLE = 5, // Ignore the Type field. TASK_EVENT_TRIGGER_AT_SYSTEMSTART = 6, // Ignore the Type field. TASK_EVENT_TRIGGER_AT_LOGON = 7, // Ignore the Type field. } [Flags] public enum TASK_TRIGGER_FLAG { TASK_TRIGGER_FLAG_HAS_END_DATE = 0x1, TASK_TRIGGER_FLAG_KILL_AT_DURATION_END = 0x2, TASK_TRIGGER_FLAG_DISABLED = 0x4, } [StructLayout(LayoutKind.Sequential)] public struct DAILY { public ushort DaysInterval; } [StructLayout(LayoutKind.Sequential)] public struct WEEKLY { public ushort WeeksInterval; public ushort rgfDaysOfTheWeek; } [StructLayout(LayoutKind.Sequential)] public struct MONTHLYDATE { public uint rgfDays; public ushort rgfMonths; } [StructLayout(LayoutKind.Sequential)] public struct MONTHLYDOW { public ushort wWhichWeek; public ushort rgfDaysOfTheWeek; public ushort rgfMonths; } [StructLayout(LayoutKind.Explicit)] public struct TRIGGER_TYPE_UNION { [FieldOffset(0)] public DAILY Daily; [FieldOffset(0)] public WEEKLY Weekly; [FieldOffset(0)] public MONTHLYDATE MonthlyDate; [FieldOffset(0)] public MONTHLYDOW MonthlyDOW; } [StructLayout(LayoutKind.Sequential)] public struct TASK_TRIGGER { public ushort cbTriggerSize; public ushort Reserved1; public ushort wBeginYear; public ushort wBeginMonth; public ushort wBeginDay; public ushort wEndYear; public ushort wEndMonth; public ushort wEndDay; public ushort wStartHour; public ushort wStartMinute; public uint MinutesDuration; public uint MinutesInterval; public TASK_TRIGGER_FLAG rgFlags; public TASK_TRIGGER_TYPE TriggerType; public TRIGGER_TYPE_UNION Type; public ushort Reserved2; public ushort wRandomMinutesInterval; static public TASK_TRIGGER CreateInstance() { TASK_TRIGGER obj = new TASK_TRIGGER(); obj.cbTriggerSize = (ushort)Marshal.SizeOf(obj); return obj; } } !!!!VB Definition: <ComImport> _ <Guid("TODO")> _ 'TODO: Insert <InterfaceType(ComInterfaceType.InterfaceIsIUnknown)> _ if this doesn't derive from IDispatch Interface ITaskTrigger TODO End Interface !!!!User-Defined Types: None. !!!!Notes: None. Documentation: ITaskTrigger@msdn on MSDN
Edit Interfaces.ITask
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.