I am currently running Windows 7 Ultimate 64-bit with a dual monitor setup with an NVIDIA 7950 GT graphics card. One monitor is dedicated to this machine and the other monitor is connected to a DVI KVM switch.
When I switch to my other computer, Windows 7 disables the monitor. However, when I switch back it does not re-enable the monitor. The only circumstance that automatically re-enables the second monitor is when I switch back after Windows has put the monitors into power save mode. I am continually having to bring up the NVIDIA control panel to have it re-enable the monitor.
Under Windows XP I would just disable the NVIDIA service to prevent it from auto-detecting the monitor (which doesn't solve the problem under Win7), and in Vista there was a registry hack that would prevent this. It looks as though that has been removed in Windows 7.
I have found similar questions posted on this site, but nothing that matches my problem exactly. The following link is the question that comes the closest, but does not provide a solution to the problem.
How do I fix monitor detection in Windows 7?
Is there a way in Windows 7 to disable monitor auto-detection?
Update: I just added a second graphics card to my Windows 7 64-bit machine. I plugged one monitor into each graphics card. Now, when I use the KVM switch to switch back and forth it will re-enable the second monitor like it should. There are however, a few quirks with this. If I have a program maximized on the second monitor and it has focus, when I switch it will move to monitor 1. If I have a program maximized on the second monitor and it does not have focus, when I switch it will behave like it is minimized and when I bring it back up it will show up maximized on monitor 1.
Definitely better than it was, but still looking for a way to disable the auto-detection.
Best Answer
Maybe this is too simple, but have you tried just using the windows+p hot key? That works only in windows 7, but is a quick way to extend, duplicate, or select a single screen. (note: when it says projector is means your secondary display)
If you're dealing with Windows Vista you can turn off Auto-Detect through following this guide. It is supposedly only for nvidia cards but may work for others as well.
That post says:
OR
You can also do it directly from the registry:
Using Windows Registry Editor Open Windows registry editor(regedit) Navigate to this location
Right click on the (UseIViewHelper) value and select modify. set the value data to 0 to disable TMM feature in Windows. If you want to re-enable TMM feature,set the value data to 1.
You also have to restart the PC afterwards.
reference
As far as windows 7 goes, it's not possible at the moment. According to moderators at microsoft's forums: "This behavior is by design and I don't think there is a way to override this functionality except to make sure that both monitors are turned on when you start the system." Pretty lame. Right now however there is a way to request this feature. Please go to the link and request this feature if you feel it is important. Also a ticket for the feature has been created officially as well. Only time will be able to tell.
A Third party software may be useful, but I have not personally used any for this purpose. I have found MultiMon which is built for multiple monitors. Hopefully this will be of some use until microsoft gets it right.