I've tried scattering a few SetForegroundWindow() statements around with a marginal improvement, the program now recovers gracefully from a powerdown cycle but the taskbar is definately active along the top of the screen.

I'm using full blown MFC and my app is not CGapiApplication based.
Ian