二进制文件不是用调试信息构建的。 C#.NET 框架 4.5

Binary was not built with debug information. C# .NET Framework 4.5

我正在使用 Visual Studio 2019 社区版(版本 16.3.7)、.NET Framework 4.5 和 C#。 尝试在调试模式下附加到进程,但进程 "Loading symbols for systemDllName from: Microsoft Symbol Server" 很长,大约 5-7 分钟。结果,我无法附加到 windows 进程和调试。

经过一些调查,我发现 MyProject.exe 模块有符号状态 "Binary was not built with debug information"。我试图在这里找到类似的问题,但没有帮助,类似问题列表:

我还尝试手动检查所有要在 "Debug" 模式构建中写入的 csproj 文件,但没有帮助。 我尝试将所有基本的东西都做成干净的 solution/delete 所有 breakpoints/check 并在调试设置中取消选中 "Only my code" 但它没有帮助。

有趣的事实:有时调试器工作正常,我完全没有任何问题。例如,我重新启动了 OS 并且它有所帮助,但有时它没有帮助。

主要问题:我不知道到底出了什么问题(pdb.files 加载?从 MS 服务器加载?一些构建问题?等等)以及为什么有时它能正常工作?

一些例子: Loading symbols for 5-7 minutes Module window. Guys, sorry for that terrible censorship :)

因此,正如@Train 所建议的那样,处理此问题的最佳方法是 VS 升级。我有16.3.7版本并升级到16.4.3版本。

不能 100% 保证这个问题不会再拍你,但目前它是有效的。 以防万一,所有常见的东西(menu/etc 中的干净 solution/folders/checks)不能帮助你尝试使用 VS 版本。