Windows 7: Detect new secondary monitor without rebooting

I have been able to do this, but it is an expert trick. From the comments it sounds like you might be comfortable with this. I am assuming you are familiar with the tools I am describing. If you are not familiar with the tools being described, I do not recommend this trick.

It involves disabling and re-enabling the device driver. The trick works on Windows 7; I have found it does not seem to work on older (e.g. Windows XP) versions; those older versions require you to reboot, which is what you are trying to avoid.

I know of two ways to accomplish disabling and re-enabling the device driver:

  • Device Manager
  • DEVCON

With Device Manager, right click on your display adapter and disable. The display will go into VGA mode. Then enable. The display adapter should re-initialize and find the second monitor (assuming it is powered on).

Using DEVCON you will need to find the PCI address of your adapter first. Then you can use commands like the following in a batch file:

devcon disable "PCI\VEN_1002&DEV_95CF&SUBSYS_21431002&REV_00"
devcon enable "PCI\VEN_1002&DEV_95CF&SUBSYS_21431002&REV_00"