Use HWnd of a form or of the Main FoxPro screen as the first parameter. With hWindow=HWND_BROADCAST, the message is posted to all top-level windows in the system, including disabled or invisible unowned windows, overlapped windows, and pop-up windows.
Initiated this way, the screen saver may not become password protected immediately, regardless of the setting in the Display Properties "On resume, password protect". It changes to protected status only after the Wait period expires. This is true for at least XP Home systems.
For the password protected screen saver, the system creates "WinSta0\Screen-saver" desktop and starts a process with "Screen Saver" window attached. So the application may judge about the state of the sreen server by finding out if this desktop exists.
Screen saver without password protection is running on "WinSta0\Default" desktop. It owns "Screen Saver" window that class is "WindowsScreenSaverClass". So this is another way of detecting whether a screen saver is active.
Credits: PHP (4.4.9), an HTML-embedded scripting language,
MySQL (5.1.55-log), the Open Source standard SQL database,
Version 4, freeware HTML Editor of choice. Hosted by Korax Online Inc.