Remote debugging on Win7 error: Unable to start debugging ...

If you are running msvsmon on a Win7 machine and are seeing the following error message when attempting to remote debug:

---------------------------
Microsoft Visual Studio
---------------------------
Error while trying to run project: Unable to start debugging.
This operation returned because the timeout period expired.
---------------------------
OK  

The issue is that the firewall is not setup properly on the Win7 machine for remote debugging. When msvsmon first launches, it will prompt the user to configure the firewall. But because of the firewall security API changes since Vista, the prompt may not come up. 

So if you are seeing the above error message, use this workaround:

Control Panel->System and Security->Windows Firewall: Change notification settings -> enable Notify me when Windows Firewall blocks a new program ->Ok

Try remote debugging again, this time msvsmon should pop up a windows security alert dialog box that prompt you to grant access permission to msvsmon.