Persistent Windows

Important update!

It seems as though the latest AMD catalyst drivers or some other magical update as of April 22nd, 2015 no longer causes this issue! This project will be on indefinite hold and I welcome anyone taking it over and am happy to assist with anyone who has any questions on it.

What is PersistentWindows?

A poorly named utility that persists window positions and size when the monitor display count/resolution adjusts and restores back to it’s previous settings.

For those of you with multi-monitors running on a mixture of DisplayPort and any other connection, you can run this tool and not have to worry about re-arranging when all is back to normal.

The tool is a bit crude and brute forced.

Download alpha version here!

Interested in contributing or just checking out the source? Check out the CodePlex page

Release notes

  • 2015-02-27
    1. Modified app to run in SysTray
    2. Removed platform constraint so hopefully 32bit(x86) works
  • 2015-01-20
    1. Fixing another bug when restoring in many circumstances
  • 2015-01-18
    1. Improved Diagnostics, UI scrolls to bottom to be slightly more useful for me
    2. Changing capturing logic from events to timing again, until I have time to write unmanaged global window hooks
    3. Fixing various bugs
  • 2014-10-30
    1. Fixing some logging stuff
    2. Fixing freeze lock at startup
    3. More diagnostics
  • 2014-10-28
    1. Added even more logging to figure out what’s going on in some instances
    2. Pushed code to CodePlex
  • 2014-10-21
    1. Added actual logging to a file for diagnostics
    2. Also including the monitor top and left locations as a key since order doesn’t seem to be deterministic
    3. Removing retry logic since it did nothing but increase the time to restore
  • 2014-10-17
    1. Improved the diagnostic view to show more relavant information on what’s going on
    2. Major changes to the main processor so that it invokes the restore when it detects a resolution change
    3. Added logic to restore maximized windows correctly, by un-maximizing them then re-maximizing.
  • 2014-10-13
    1. Primary brute forced goals achieved. All windows appear to be restoring back to original location.

Comments

15 responses to “Persistent Windows”

  1. Jessie James Avatar
    Jessie James

    I registered just to tell you what a great tool this is. I’ve been searching for a solution for weeks, and this was the only thing that worked. Thanks!

  2. LeilaBD Avatar
    LeilaBD

    I’ve suddenly started experiencing this problem with my Windows 10 setup after upgrading my dual monitors from Dell 2007WFP/LG IPS224V to Dell 2408WFPb/Dell U2412Mb. Connection method exactly the same, so very odd.

    Anyway, I’m currently running the forked version v1.1.1 and it’s working great so far. So, thank you both.

  3. Asimov Avatar
    Asimov

    Persistent Windows is the only tool that keeps my Windows in the same position allways! Thanks for creating this tool.
    My setup is Dell U2717D monitor on Intel UHD Graphics 630, connected via Display Port. Everytime I switch the power from the monitor and switch it back on, all the windows are in the upper left corner with a wrong size. Also igfxem modules sends a notification about a optimal display resolution witch isn’t even support by my monitor.

    All my drivers are up to date. So your tool is the only sollution for me!

    Great work!

  4. Dark Avatar
    Dark

    Great work! I’ve forked it here: https://github.com/lukefor/persistentwindows – currently with no license as I guess that’s up to you

    I’ve reduced the background CPU usage to almost nil and tried to fix the handling of mixed DPI setups. It’s not totally perfect yet, but it seems DisplayFusion suffers from the same bugs so I suspect the windows API is doing something a bit odd.

  5. riseabove Avatar
    riseabove

    Just wanted to say that this is still a very needed and very useful tool. September of 2018, Windows 10 (1803) still has this problem when switching inputs. I have tried just about everything with updating and messing with the video card drivers (Intel HD Graphics 530) and the Intel Graphics settings applet. Both are up-to-date. I even replaced the Generic PnP Monitor driver with the specific type of Monitor driver and messing with different Windows settings and nothing works except maybe/possibly some registry hacks that were truly hacks. It is very annoying and also interesting how no Linux distro suffers with this problem – just Windows.

    Thank you – Thank you for developing this program. Please keep it up-to-date as it is still needed even with the latest Windows 10 and latest graphics drivers.

  6. rsipson Avatar
    rsipson

    Just wanted to say that I have Windows 10 running Samsung QHD monitor and have been trying for some time to find a way to have my windows not packed up in the corner every time it sleeps. It is surprising to me that this should be a problem with standard drivers but it is. I have tried reg hacks etc but nothing worked.

    I saw one post that said to switch to HDMI but why go to technology that does not fully support my expensive monitor. I beat Google to death and finally found your program when I realized that I need the key word Displayport. With some trepidation about running programs from a source I was not familiar with, I installed and ran your program and now I don’t have to drag and resize my windows every time I come back to my beautiful monitor.

    I don’t know if you are still working on this project but I thought I would let you know that I found that it solved a problem for me. Thank you.

  7. Richard Robinson Avatar
    Richard Robinson

    Could this be adapted to eliminate the chaos that occurs for the relative placement of multiple monitors when one disappears?

    I have a large number of monitors, some oriented upside down (narrow bezel on three sides). If I power off one monitor, all of the others rearrange themselves into a single row.

  8. Eric Avatar
    Eric

    Very useful when I play games in full screen mode which, especially like older games, don’t support high resolution.

    I can stop windows resizing after the full screen game.

    My video card is GTX 660 but nVidia panel cannot help me

  9. Dale C Avatar
    Dale C

    Looks like there’s still some use (and demand) for this software. While the more recent AMD drivers seem to have somewhat mitigated this problem, at times the behavior persists and only with a reboot can I restore proper functionality. This can be inconvenient when performing work that requires several hours to complete. I’d like to see this developed further and minor bugs worked out.

  10. Alec Avatar
    Alec

    Great Program. But it restore all my minimized windows when i play a fullscreen game so it cover what i am looking at on my 2nd monitor.

  11. MastroMicio Avatar
    MastroMicio

    Thanks for this tool! I hope you keep it in development because there’s a lot of people out there needing this!
    Anyway, thanks!

  12. Jerm Avatar
    Jerm

    I tried to contact you via your contact me page but there is a captcha error.

    I am not sure what your name is but I want to thank you for this utility. I have a 4k Acer display connected to a NVidia card with Windows 7 and I tried everything like regedit, windowsKey+D and others and nothing worked upon waking from sleep. This is the only thing that works and it works perfectly for me. I also have a power strip that denies power to all devices when the computer sleeps.

    Please feel free to contact me. I could take over the project but this code should be built into Microsoft windows!

    Thanks again,
    Jeremy

  13. smaybee Avatar
    smaybee

    Left a survey response also. This tool is still needed and it needs one fix. It restores minimized window sizes properly but leaves them unminimized. I hope you will consider fixing that. Thanks

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.