前两天闲着没事给win10系统安装了360安全卫士,谁知道安装完成后,平常使用的visual studio 2015就出现问题了,调试编译程序的时候总是会出现“64位调试操作花费的时间比预期要长”的问题,于是就各种查找微软MSDN解决方案,但是网上给出的大多答案都是前篇一律的通过命令提示符执行netsh winsock reset catalog和netsh int ip reset reset.log hit重置网络,但经亦是美网络小编实践,这种方法根本不能解决问题,于是就自己手动排查问题,功夫不负有心人,导致这一问题的罪魁祸首就是360杀毒软件,下面具体为大家介绍。
大家要知道,Visual studio自身是32位(X86)程序,如果想要调试X64的程序,必须通过一个远程调试器MSVSMON.EXE来进行调试,但是这个MSVSMON.EXE需要监听一个TCP/IP端口才能够接收从 Visual Studio 发送的数据,如果我们安装了杀毒软件,这个端口可能会被杀软屏蔽,从而导致远程调试器MSVSMON.EXE无法与VS取得通信,知道了问题所在,我们直接配置Visual Studio 计算机与远程调试器 之间的防火墙就可以了,其实也不用麻烦,远程调试器能够自动配置Windows 防火墙,我们只需要在VS的安装目录下找到MSVSMON.EXE打开就可以了,亦是美网络小编用的是VS2015,目录为C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Remote Debugger\x86\MSVSMON.EXE,找到后我们直接运行它, 如下图所示:
我们直接点击图中的“配置远程调试”按钮,如下图所示:
这样子MSVSMON.EXE就自动配置好了TCP/IP端口4020,关于端口,不同版本的VS它们也是不一样的,并且每个版本都有两个端口,还拿VS2015为例,4020端口适用于X86和X64系统,而4021端口仅在Windows X64上使用,以便调试X86程序。