WIN部分程序调用VS C++库导致提示报错R6034解决方法
最近电脑上的部分软件运行的时候有时候会报错R6034,猜测可能是软件安装冲突导致
可能是因为软件在调用VS C++runtime error库的dll文件的时候找不到或者找到了错误的版本导致
于是在网上找解决方法,找到了bug修复圣地的Stack Overflow一个大神帖子!
第一步
下载Process Explorer,来追踪出问题的地方。因为一般 VS C++runtime error提示,都是和DLL文件有关。而这个软件就是用来追踪dll或者其他出问题文件内部关联的插件等位置。
第二步
安装之前,可以先将出错也就是报错的软件关闭,这里我的出问题的地方就是svn了,所以关掉软件。
然后重新打开出错的软件,重现刚才报错的Runtime Error R6034弹窗。
打开process explorer,界面如下。
第三步
开始追踪,首先可以选择 view -> lower pane view -> DLLs 查看模式。
第四步
选择你提示报错的软件,也就是“C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe”前面提到的报错程序。
会出现很多该程序进程关联或者调用的DLLs等诸多东东。
找到其中,出现的以“msvcr??.dll”的DLL,可以发现到,我的路径下出现了很多的msvcr90.dll,也可能你的不是调用的VS2010,或是其他,会有很多个重复的,那么问题就是这些个重复的“msvcr??.dll”了。
第五步
注意查看这些个重复的“msvcr??.dll”,注意看后面的路径,只要不是在“C:\Windows\WinSxS”这个路径下的,你都是要将其删掉或者说重命名改成别的后缀(这是个好习惯,我改成了-Bak后缀名,这个无关紧要,你要删除或者干别的,反正就是不能留它原来就行了)
第六步
通过右键该重复的“msvcr??.dll”-> properties ,查看点击看到其绝对路径,点击“browse”,找到该文件,将其删除或者是重命名 加上“bak”。
比如我的是这个样子,。
第七步
重复6的操作,直到你的朋程序不在报这个错位置就行了。
以上就是排除步骤
最后
我这边最后发现是因为环境变量path里面有:D:\Anaconda2\Library\usr\bin;D:\Anaconda2;
这2个目录下面都有 msvcp90.dll
将其改名,再次运行svn的时候就没有报错了
作者:旧旧的 <393210556@qq.com> 解决问题的方式,就是解决它一次