App window placement with multiple monitors


What’s the secret to getting apps, or Windows on behalf of the apps, to remember their monitor placement in a multi-monitor setup using Windows 10?

I have two external monitors hooked up to my Surface Pro 4 at the office using a Surface dock.  The external monitors are 24″ HD displays (so non-High DPI).  I use them plus the Surface display. 

At least once a day, I return to my desk, unlock the device, and find that the app windows have all switched to a random display and resized themselves.  Everything is fine at other times.  It is absolutely infuriating and interrupts my dev flow. 

I’m not concerned about where they are when I start the apps.  I just want the running apps to remain on the monitor I placed them on across a lock/unlock.  That doesn’t seem like too much to ask.

I feel like this is a Windows bug, not a problem with the apps themselves.  It seems like Windows is, at some point, briefly losing knowledge of multiple monitors being attached.  Maybe the Surface is actually going into a sleep state and that’s what is confusing Windows.

I haven’t written any Win32 desktop apps in 10 years–I’m pretty much web app exclusive these days–so I don’t know if detecting and remembering which monitor an app is running on is something expected of an app dev.  Seems like Windows should manage that, especially across a lock and unlock.  I could see expecting the dev to do that across restarts of the app.

Found a few things on the web, but most are hacks or apply to W8.  Appreciate any help.

Post Reply