IScheduledWorkItem (Interfaces)
Last changed: alastairgbrown@yahoo.com.au-203.167.226.133

.
Summary
There is some helper code in ITask, for encapsulating the use of IEnumWorkItems, creating the TASK_TRIGGER structure (used by ITaskTrigger), and creating ITaskScheduler. Not all methods have been tested, so be careful!

C# Definition:

    [Guid("a6b952f0-a4b1-11d0-997d-00aa006887ec"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
    public interface IScheduledWorkItem
    {
    int CreateTrigger(                      out ushort  iTrigger,
                [MarshalAs(UnmanagedType.IUnknown)] out object  trigger);
    int DeleteTrigger(                      ushort      iTrigger);
    int GetTriggerCount(                    out ushort  iTriggerCount);
    int GetTrigger(                     ushort      iTrigger,
                [MarshalAs(UnmanagedType.IUnknown)] out object  trigger);

    int GetTriggerString(                   ushort      iTrigger,
                [MarshalAs(UnmanagedType.LPWStr)]   out string  trigger);

    int GetRunTimes(                    ref SYSTEMTIME pstBegin,
                                ref SYSTEMTIME pstEnd,
                                out ushort     count,
                                out SYSTEMTIME rgstTaskTimes);

    int GetNextRunTime(                     ref SYSTEMTIME pstNextRun);
    int SetIdleWait(                    ushort     wIdleMinutes,
                                ushort     wDeadlineMinutes);
    int GetIdleWait(                    out ushort     wIdleMinutes,
                                out ushort     wDeadlineMinutes);
    int Run();
    int Terminate( );
    int EditWorkItem(                       IntPtr     hParent,
                                uint       dwReserved);
    int GetMostRecentRunTime(                   out SYSTEMTIME pstLastRun);
    int GetStatus(                      out uint       hrStatus);
    int GetExitCode(                    out uint       dwExitCode);
    int SetComment(       [MarshalAs(UnmanagedType.LPWStr)] string     Comment);
    int GetComment(       [MarshalAs(UnmanagedType.LPWStr)] out string     Comment);
    int SetCreator(       [MarshalAs(UnmanagedType.LPWStr)] string     Creator);
    int GetCreator(       [MarshalAs(UnmanagedType.LPWStr)] out string     Creator);
    int SetWorkItemData(  ushort cbData,    Byte[] rgbData);
    int GetWorkItemData(  out ushort cbData,out Byte[] rgbData);
    int SetErrorRetryCount( ushort wRetryCount);
    int GetErrorRetryCount( out ushort wRetryCount);
    int SetErrorRetryInterval( ushort wRetryInterval);
    int GetErrorRetryInterval( out ushort wRetryInterval);
    int SetFlags( uint dwFlags);
    int GetFlags( out uint dwFlags);
    int SetAccountInformation( [MarshalAs(UnmanagedType.LPWStr)] string AccountName,
                   [MarshalAs(UnmanagedType.LPWStr)] string PassUInt16);
    int GetAccountInformation( [MarshalAs(UnmanagedType.LPWStr)] out string AccountName);
    };

VB Definition:

<ComImport> _
<Guid("TODO")> _
'TODO: Insert <InterfaceType(ComInterfaceType.InterfaceIsIUnknown)> _ if this doesn't derive from IDispatch
Interface IScheduledWorkItem
   TODO
End Interface

User-Defined Types:

None.

Notes:

None.

Documentation