Resized maximized windows after screen resolution change

At my desk I use my work laptop docked with 2 external monitors; my primary display is 1680x1050. My laptops built in screen is only 1440x900. When I undock my laptop to take it to a meeting, all the maximized windows are automatically resized to 1440x900. When I plug it back into the docking station the windows are not restored back to 1680x1050. Even more annoyingly they still have the maximized flag set even though they're displayed identically to a non-maximized window placed in the upper left corner of the desktop. This means that in order to restore them I need to first restore the window to a formal unmaximized state, and then re-maximize it.

Is there any software available that would automatically detect the redocking (or related change in screen resolutions) and fix the windows for me? I have copies of both Display Fusion and UltraMon, but haven't found any settings in either of them to fix this problem.


There's a program from Sysinternals called Desktops, it lets you create 4 virtual desktops, and its very slick.

I actually use the program for a similar purpose, its a little frustrating, cause you need to run 2 desktops, and set one to one resolution and the other to the other resolution, but it does work for most needs, and beats resizing all the time, its just a few keystrokes.

The other solution I'm working on, is a Powershell script/cmdlet that'll save my current window positions and size, and reset them when I change resolutions. But...that's a bit more complicated and I don't have a lot of spare time to work on it right now.


I minimize and then maximize. Manually. Does the trick.

WinKey+M (minimize all)

and then

WinKey+Shift+M (maximize all)