系统错误,MSVCP100D.dll找不到或丢失!
文章首发 | 公众号:lunvey
今日研究c++,找了一些示例程序,发现无法打开。弹出如下的报错提示:
作为新时代人类,遇见问题第一件事情就是问度娘。然而眼花缭乱的检索数据,大家众说纷纭,不知道如何是好。
有人说,下载这个dll文件,然后替换一下,接着注册就行;也有人说这个是微软运行库,需要安装对应的vc++运行库。作为一个新手来说,我懵了。
抱着刨根问底的态度来做学问,我先研究了一下这个MSVCP100D.dll是何方神圣。
既然vc++库是微软官方的,自然从官方文档寻找答案。
不难发现,我们今天的主角MSVCP100D.dll只是C++标准库MSVCPRT.LIB的多线程动态链接中的实现文件。至于后面的数字只是代表了不同版本而已。
按图索骥,发现MSVCP100D.dll对应的vc++库是vc++2010。话不多说,直接下载安装,这里贴一下链接,有需要的朋友可以少走弯路。
32位下载地址
//www.microsoft.com/en-in/download/details.aspx?id=5555
64位下载地址
//www.microsoft.com/en-us/download/details.aspx?id=14632
值得一提的是,下载的时候一定要选择和Windows系统匹配的语言版本,这里我选择的中文。
由于我使用的是64位版本,这里安装完成测试一下。发现依然无效,继续报错。不得不明白一个道理,这个32位和64位并不是针对我们的电脑环境,而是开发的环境。鉴于此,希望大家同时安装,这样就能匹配不同开发环境的vc++2010依赖。
当我按照以上操作之后,既然报错,查看Windows目录发现确实没有MSVCR100D.dll,只有MSVCR100.dll。难怪报错,那么加了D的dll文件代表什么意思呢?为什么会没有呢?
d是指的Debug,而我们安装的是发行版。里面默认没有这个dll文件,那么此时我们需要去单独下载这个文件,然后复制到Windows下的SysWOW64目录即可。
安装完成以后,切记这个MSVCP100D.dll只能在win7下使用。大家记得使用兼容模式运行。
至此,大功告成!
记录此文,学习路上,和大家共勉,如果能帮到你,记得点赞哦~