VS编译提示:无法打开xxx.exe进行写入
针对VS编译时提示:“无法打开xxx.exe进行写入”,分析其触发情况及产生原因,并提出解决方案。
触发
通常出现在,编译时出现中断错误,点中断后会出现如下提示:
如果不进行上图的强制“立即停止”操作,则程序会一直卡在这里,等待调试完全停止,窗口才会关闭。但是如果“立即停止”,则下一次再进行编译时,即会出现如题“无法打开xxx.exe进行写入”的错误。
原因
如上图提示所述,当强制“立即停止”时,调试尚未完成,此时编译器仍卡在上一次调试时生成的进程中(不会在桌面体现出来),而“xxx.exe”文件仍被相关进程占用。此时,若进行下一次编译,程序将会尝试打开“xxx.exe”文件,并对其进行修改,但是该文件仍处于被占用状态,所以才会提示无法打开并写入的错误。
解决方法
解决方法很简单,就是想办法终止相应的编译进程、释放被占用的xxx.exe文件即可,通常有如下两种解决方法:
1.方法一
把错误中提及的“xxx.exe”文件强制删除(如“使用360强制删除”),则进程被终止,然后重新编译即可。
2.方法二
进入“任务管理器”,选择“进程”选项卡,进入对应的Visual Studio进程,并展开下拉三角,查看当前进程包含的线程项,如下图所示:
找到上图所示的“VsHub.exe”,右键“结束任务”即可。