我想我有一个简单的问题,但对我来说并不明显:
我的构建 PC 上有 VS 2022,我的远程目标 PC 上有 VS 2022 远程调试器。
在构建 PC 上的 VS 项目中,在调试属性中,我配置了远程服务器和远程命令。
我使用调试版本。
启动远程进程时,我在远程目标 PC 上收到几个有关丢失的消息框
我在
C:\Program Files\Microsoft Visual Studio 17.0\Common7\IDE\Remote Debugger\x64
(远程调试器 exe 旁边)中看到远程 PC 上的 msvcp140.dll(不带 d)。
我能够调试发布版本。 但为什么我的调试版本失败了?这不是一个常见的远程调试用例吗?
显然,正如 Hans Passant 在他的评论中正确指出的那样,需要将所需的 debug dll 手动复制到目标 PC。我使用 exe 目录作为目标。
另请参阅 这篇 learn.microsoft.com 文章。
或者考虑链接到 release dll:请参阅 这个答案。
这里是我使用的源目录的快速参考(尽管调试 PC 上有更多实例,但我使用了
debug_nonredist
目录中的文件):
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.34.31931\debug_nonredist\x86\Microsoft.VC143.DebugCRT\msvcp140d.dll
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.34.31931\debug_nonredist\x86\Microsoft.VC143.DebugCRT\vcruntime140d.dll
C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.UniversalCRT.Debug\10.0.19041.0\Redist\Debug\x86\ucrtbased.dll
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\bin\Hostx86\x86\clang_rt.asan_dbg_dynamic-i386.dll