Running jobs during user "idle" times.
There is no easy way (using 24x7 Scheduler) to correctly detect idle time in Windows
95/98. However it is relatively simple under Windows NT. You may want to create a
"dispatcher" job of 24x7 script type that will use WindowGetActive
statement to detect is a screen saver is running. If it is running then this job will
trigger other jobs directly, or via creation of various semaphores (files, emails,
Note that WindowGetActive returns the handle of the foreground window, that is, the window
that the user is currently working with. The proper handle is returned when the desktop
that the application is running on is active; however, when another desktop is active,
WindowGetActive returns 0.
The application desktop is one desktop. Other desktops include the logon and screen saver
desktops. Therefore, if WindowGetActive returns 0, it means that either screen saver or
logon dialog is active. You can use screen saver settings to regulate (via
"Wait" interval) user-inactivity threshold.
Note that due to architectural differences between Windows 9x and NT, WindowGetActive
always returns non-zero value under Windows 9x. This is expected behavior.
Additional notes: You must use 24x7 Scheduler v1.3.1 or
above in order for the WindowGetActive statement to work correctly under Windows NT.