Monday, December 6, 2010

Vista screen resolution resets monitor on lock, reboot, etc. for dual display

Vista has this nice feature called "Transient Multi-Monitor" (TMM) service which detects when monitors are added/removed from your laptop. Unfortunately, it has a habit of LOSING ITS MIND and resetting your display resolution at random times. For example, if you connect a new monitor or (lately) if the screen locks. When I unlock the screen, it resets to 800x600 or some other lame resolution.

This is all controlled by the "TMM" which is run by the task scheduler. If you don't have multiple monitors, then you can just disable it in the Task Scheduler and solve the problem. I, however, DO have multiple monitors which I'm often changing. It worked fine for a while, but has degraded to chaos lately.

Here's a good article about resetting it the registry settings so you can start over and see if it fixes your problems:

These are stored in HKEY_CURRENT_USER\Software\Microsoft\MobilePC\TMM and you can simply delete the tree and have it start over. You need to logout/in to make it fix itself. There are also a lot of semi-related keys stored here: HKEY_CURRENT_CONFIG\System\CurrentControlSet\Control\VIDEO that have similar settings. I don't know what the effect of changing those would be...