I created custom platform for our industrial device (Platform Builder 4.2).
This is a platform with GUI (IABASE) but without the shell and it doesn't
have a taskbar and a desktop window. My platform doesn't use full power
management, it uses pmstubs instead.
I have implemented PowerHandler function in display driver and additionally
DrvEscape to "manually" control LCD backlight.
I would like to implement a feature like screen saver (turn off LCD
backlight, after predefined user inactivity time).
I found in PB help following registry settings that as I think should be
appropriate for such task.
When I set ExtPowerOff to no zero value it works fine i.e. PowerHandler in
my display driver is called and also other functions for power off are
called. But unfortunately when instead of ExtPowerOff, I set ScreenPowerOff
to no zero value (I just want turn off backlight not power off whole
system), nothing happens.
I found that GWES is trying to send WM_POWERBROADCAST, PBT_APMUSERIDLE to
the taskbar window but as I mentioned earlier I have no taskbar.
Now for test I have registered my application window as a taskbar
(RegisterTaskBar) and now it receives appropriate WM_POWERBROADCAST
My question is that is it the right solution to set the main window of my
application as a taskbar window?
If so what about the desktop window?
The docs say that a taskbar and a desktop should be created before
RegisterTaskBar. But I don't want a desktop and a taskbar so could I use the
same window to be both a desktop and a taskbar?
Or maybe is it another solution (without a taskbar)?