Visual Studio 远程调试 - 缺少 MSVCP140.dll

6

我正在尝试从本地开发机远程调试运行在远程机器上的 .Net 应用程序。但是出现了一个错误提示:MSVCP140.dll丢失

详细信息如下:

开发机:Visual Studio 2015,Windows 7

远程机器:Windows Server 2012 R2,已安装 Visual Studio Remote Tools for 2015。

在远程机器上,我将“远程调试器”配置为“无身份验证”,端口为 4020。

在开发机的 Visual Studio 的“附加到进程”窗口中,配置如下:

传输方式:远程(无身份验证)

限定符:remote_machine_name:4020

当我点击 刷新 按钮时,它会列出远程机器的进程。而在远程机器上,Visual Studio 远程调试器的窗口显示 user_name 已连接

Remote Debugger window 的截图

一旦我在 Visual Studio 中附加到远程机器的进程,它就进入调试模式,但是符号仍然未加载。

有趣的是,在远程机器上我收到了一个错误消息:"程序无法启动,因为您的计算机缺少MSVCP140.dll文件。
尝试重新安装该程序以解决此问题。"

错误消息的截图:MSVCP140.dll 丢失

值得注意的是,在 msvmon.exe 文件的路径下确实存在 MSVCP140.dll 文件。


嘿,我也遇到了同样的问题。你现在找到解决方案了吗? :) - zodo
还没有得到解决方案。如果解决了,我会发布的。 - Nagesh Andani
好的,谢谢。我会做同样的事情。;) - zodo
2个回答

10

我成功地让Visual Studio 2015远程调试器工作了,方法是在远程主机的环境变量“path”中添加msvcp140.dll所在目录,并重新启动远程主机上的远程调试器。

  1. 在远程主机上查找msvcp140.dll。对我来说,有几个副本,我选择了“C:\Program Files\Microsoft Visual Studio 14.0\Remote Tools\DiagnosticsHub\”。
  2. 打开环境变量对话框。控制面板->系统和安全->系统->高级系统设置->环境变量...
  3. 在“系统变量”组中,选择“path”,然后单击“编辑”。
  4. 在末尾添加一个分号,并粘贴msvcp140.dll的路径(C:\Program Files\Microsoft Visual Studio 14.0\Remote Tools\DiagnosticsHub)。
  5. 单击确定,单击确定,单击确定。
  6. 如果Visual Studio远程调试器正在运行(检查系统托盘图标),则退出它,然后启动Visual Studio远程调试器。

这太棒了。像冠军一样解决了我的问题!!!非常好的答案。非常感谢! - Jason Anderson

0

检查您的平台解决方案版本(x86或x64)

在您的远程机器上安装与您的平台和VS版本匹配的C++ Redistributable package。如果不确定,请同时安装两个软件包。您不需要重新启动。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接