I have tried numerous fixes which are in answers to similar questions on various forums, and none has really fixed the problem. Apparently, Microsoft initiates restoration of each window as soon as the logon prompt is displayed, and checks to see that the screen real estate is there as it does so. When it wakes the monitors, there can be a delay before a monitor is detected by the OS, and Windows uses a default simulated monitor if there is no monitor detected yet. Microsoft likes this behavior, as it prevents loss of access to offscreen windows if you reduce the number of screens, especially after someone disconnects a projector from a laptop at the end of a meeting.
This delay in the monitor becoming visible to the system could also depend on how the monitor is attached to the system (VGA, HDMI, DVI or DisplayPort), and how the graphics adapter reports the monitor configuration during wake-up. With my setup (Radeon R9 260, LG monitors, primary on PowerPort, older, smaller one on HDMI) it seems like the monitor configuration isn't fully visible to Windows until the little monitor health windows both go away.
I have found that I can avoid most moving and resizing if I am patient and careful about how I wake the system.
The problem seems to be that pressing a key or mouse button initiates both wake and logon in a single action. Even while logon initiation is waiting for you to enter a password or select a different user, it starts waking up the windows from the previous session to save time. Therefor it can be looking at the monitor configuration to make sure the window placement is valid before many monitors wake and become ready and visible to the system.
The trick is to separate wake from login initiation. One way is to use the computer power button to wake, assuming it is set to do that. One of my keyboards has a wake/sleep button, and that also works.
The way that I generally use is to move the mouse (an arrow key would also work) to start to wake the system up, and then wait for the monitor to fully wake before pressing any other key or the mouse button to get the logon prompt. My monitors display a little window of configuration info at startup, and if I wait until both of those have disappeared before I press a key or mouse button to get the login prompt, the windows generally come up where they belong. I wait to see the background wallpaper up without a login prompt until the monitor initiation is complete, and then click to bring up the logon prompt.
If I start by pressing the mouse button or any of the other keyboard keys, or if that has happened since the computer went to sleep even if I never logged on, it seems to initiate both wake and logon (displaying the default user and accepting the password) at the same time. This causes the system to start waking up windows, program by program, without being able to see the monitors, and they all end up in the top left of my primary monitor. Sometimes, say if I move the mouse but then press the button too fast, some programs (say, Excel and Bing) have their windows moved there, and others (Chrome and Word, maybe) have them still where they were. I think that tends to confirm my theories above of why this works.
There is also a tendency of some windows to migrate down and right a bit on wakeup; I don't see much of a solution to that except to extend the window to the bottom or right edge of the screen, or at least to near it (hitting the bottom in Win10 tends to extend the window vertically over both screens, in a top/bottom configuration).
I have the exact same card, running the exact same operating system, and this never happens. What that tells me is the behavior is because of your monitors perhaps. I even have the monitors in the exact same setup as you. Try and get a different secondary monitor to test. – Ramhound – 2015-12-03T19:47:12.967
Related: http://superuser.com/questions/453446/how-can-i-stop-windows-re-positioning-after-waking-from-sleep
– dxiv – 2015-12-04T01:26:36.170@Ramhound well, you don't have the exact same setup as you do not have the issue :/. It is a Windows 10 upgraded from 7, the GPU might be from a different vendor, some other driver on my system may conflict with the video driver, etc. Hard to say that. But getting new screens is planned anyway, however getting two new screens for a machine not reliably handling two at once is a shot in the dark. – Samuel – 2015-12-04T07:40:30.617
@Samuel - I just got done telling you, I have the exact same setup, except for clearly what monitors I have. A GTX 770 is a GTX 770. Don't tell me I don't have the same setup. – Ramhound – 2015-12-04T12:28:03.910
@Ramhound, same behaviour with a new Geforce 1080. My primary screen was moved to secondary, primary is a gaming screen now. Same behaviour. When powering on screens back, the secondary now delays, win 10 moves all windows to primary. – Samuel – 2017-04-18T16:49:50.130