MSVCP140.dll 丢失的解决方案

MSVCP140.dll 丢失的解决方案

前景提要:在之前的一个项目中有使用workhtml 将一个url对应的页面生成一个pdf的功能,在开发测试的环境功能全部正常,但是部署到客户的正式环境服务器之后,功能失效,系统也没给出明细的报错。后来在使用控制台应用程序使用workhtme.exe的时候发现在客户环境提示“无法启动程序,因为计算机中丢失MSVCP140.dll。尝试重新安装该程序以解决此问题”。如下图:

MSVCP140.dll 丢失的解决方案_第1张图片
经过参考网上各位前辈的经验,最终得以解决,具体解决步骤如下。

  • **从正确的服务器环境中C:/C:\Windows\System32 和C:\Windows\SysWOW64文件夹下copy出msvcp140.dll,按照对应目录复制到dll缺失的服务器中。**如图:
    MSVCP140.dll 丢失的解决方案_第2张图片

  • 注册dll
    Win+R 输入cmd打开命令提示符,执行如下指令

  • cd C:\Windows\System32

  • Regsvr32 msvcp140.dll
    如图:
    MSVCP140.dll 丢失的解决方案_第3张图片
    又得时候会提示如下错误:
    MSVCP140.dll 丢失的解决方案_第4张图片
    这个问题可以忽略掉,应该执行过以上的命令后,我们的程序就已经可以运行了。

后记:
1.在我发布的web项目中,进行断点调试,或者操作日志记录时,服务器缺失dll,并没有抛出任何错误,发现这个dll缺失还是因为我用了控制台应用程序测试才报出的错误,至于为什么我的项目中没有任何错误提示,我也没无法解释。
2.在命令提示符中注册dll报出了“找不到指定模块的错误”但是程序却可以正常运行了,这个现象我目前也无法解释。(正式因为这个现象导致我在第一次去客户现场解决的时候一直以为没能注册成功,最终悻悻而归,时候发现其实第一次已经解决掉了问题。)

你可能感兴趣的:(.NET)