3D Screensaver interferes with WPF application (Windows XP)

I have a fairly large application that uses WPF for its user interface. I recently discovered an unusual defect regarding the 3D splash screen. 3D Splash Screens 3D FlowerBox, 3D Flying Objects, 3D Pipes, 3D Text make 1 of my WPF windows disappear when the screen saver is activated. Other screensavers are fine.

My application only encounters this problem on Windows XP.

I have experience with DirectX. When the 3D screensavers are activated, the d3d device context will be switched to exclusive mode. I believe WPF cannot restore the device context when the device switches back to co-op (hence why it only affects Windows XP)

Has anyone seen a scenario like this before? Is there a remedy for the problem?

Windows XP SP3, DirectX 9.0c, .NET 3.5

+2


a source to share


1 answer


Not that accurate, but I've definitely seen strange problems with WPF and Windows XP, especially. It's easy to say that you should try to upgrade to Windows 7 ASAP, but then I'll just be a jerk.

First of all, check your video device driver. We had a lot of problems with WPF on XP when using old graphics card drivers. Please update it to the latest version. This can take care of this.

If that doesn't work, and if you can, try swapping your graphics card for a different brand. This can work too (although highly undesirable).



Third, is your window semi-transparent or non-rectangular? If you switch your WPF application to a regular, rectangular, boring, ugly Windows XP window, we find that many of those quirks went away when we stopped enjoying our main windows. I'm guessing this is because XP doesn't have a desktop window manager. But again, I don't know.

I know this is very unsatisfactory. We had things like this happened to us on XP. I pray that our IT department can move us to 7 this year ...

0


a source







All Articles