最后更新:2020-9-23
随着V4.0正式版的发布,近来有部分用户来咨询如何删除被占用的C++文件。在此我将以解决最常见的PC版QQ占用的3个C++2010文件(alt100.dll、msvcr100.dll、msvcp100.dll)为例,向大家演示一下操作方法,其他C++或文件的方法大同小异。此次操作以Windows10为例,其他系统相应参考即可。
首先,当C++修复失败时,如果想查看具体的错误信息,请首先确定您使用的V4.0增强版或更高版本,老版本不支持此功能。确认好版本后,运行DirectX修复工具,依次打开“工具”->“选项”->“常规”对话框,并确认“修复失败时启用调试模式”已勾选,如下图。
准备工作做好后,即可开始正常修复过程,如果您的系统中为常规情况,那么修复将会一帆风顺,最终成功。但如果您的电脑里存在各种特殊问题,那么就可能遇到修复失败,如下图。
如上图所示,修复完成后,C++2010仍未修复成功,并存在3个错误文件。这时我们只要点击蓝色的超级链接,即可在新打开的窗口中查看具体问题文件,如下图。
从图中可见,3个文件被占用,导致修复失败。这时可以在任何一个文件上点击右键,可以定位到文件所在目录。知道被占用的文件后,不管我们在上图对话框里直接点删除,还是定位后再手动删除,Windows都会提示文件被QPCore Service占用,无法删除,如下图。
这时怎么办呢?经验丰富的用户从QPCore Service这个文件名上一眼就能看出,这个是QQ的程序文件;如果是小白完全不知道这个QPCore Service对应的是哪个程序,百度一下即可。经检查,是QQ在占用这几个文件,所以导致修复失败,所以正常的思路是把占用文件的QQ程序退出应该就行了。但当我们右下角图标里退出QQ后,发现上面的错误依然存在,删除这几个文件时依旧提示被QPCore Service占用。这是因为QQ不仅有前台的QQ.exe程序,还有后台的QQProtect.exe保护程序。后台程序不退出依旧会导致文件被占用,因此我们只需要把后台的保护进程终止即可。
首先需要打开任务管理器,在任务栏单击右键,点“任务管理器”即可,如下图。
如果这是您第一次使用任务管理器,详细信息是处于折叠的状态,需要左下角点击展开详细信息,如下图。之前已经展开过的就不用再展开了。
展开后,点击“详细信息”选项卡,如下图,可以看到当前正在运行的程序。
这时我们向下滚动列表,并找到“QQProtect.exe”进程,并右键结束任务即可,如下图。
该任务结束后,任务管理器列表里没有任何关于QQ的进程了,这时我们再找到刚才被占用删不掉的文件,右键即可删除。所有被占用的文件都删除后,即可再次运行修复工具,把没修复成功的组件进行修复即可。
总结
如需查看C++修复失败的具体原因,需使用V4.0或更高版本,并开启“修复失败时启用调试模式”功能。如C++修复失败,可在详细错误信息窗口中看到失败的原因。如果出现文件被占用,在任务管理器中找到正在占用的进程,并结束后,即可删除异常文件,进而可以重新运行修复工具进行再次修复。