Visual Studio 中的远程调试:符号文件与模块不匹配

发布于 2024-09-08 17:28:01 字数 589 浏览 7 评论 0原文

我一直在网上搜索,试图找到这个问题的答案,但所有其他建议都不起作用。

我有一个 C# .net 3.5 dll,它是另一个程序的加载项。当用户按下某个按钮时,程序会调用 dll。我的工具出现与用户计算机的特定设置相关的错误(在我的计算机上无法重复),因此我想远程调试它。

我在远程 PC 上设置了调试工具(2010,但也在 VS 2008 中尝试过获得相同的结果),并运行我的 DLL。然后我转到“调试”>附加到进程,选择远程 PC,选择托管我的 dll 的 exe“Revit.exe”,然后就可以正常附加了。但我无法设置任何断点或任何东西,因为它说没有加载符号。 (带有/的红色未填充圆圈!)

我打开模块窗口,右键单击我的DLL“PLT2.dll”并尝试从符号路径加载符号,我选择位于网络驱动器旁边的PDB文件DLL 并显示它与模块不匹配。

我根据在网上找到的建议尝试了以下操作:

  • 检查代码是否未设置为优化,并且输出调试信息设置为完整。
  • PDB文件肯定与DLL匹配,我把它们全部删除,然后重建它。
  • 两台计算机上的符号路径是相同的
  • 仅启用我的代码

有人对我能做什么有任何想法吗?

I've been scouring the net trying to find an answer to this question, but all other suggestions don't work.

I have a C# .net 3.5 dll that is an add-in to another program. The program calls the dll when the user presses a certain button. My tool is having an error that is related to the specific setup of the users computer (unrepeatable on mine) so I want to remote debug it.

I have setup debugging tools (2010, but have also tried in VS 2008 for the same result) on the remote PC, and run my DLL. I then go to Debug > Attach to Process, select the remote PC, select the exe 'Revit.exe' that hosts my dll, and it attaches ok. But I can't set any breakpoints or anything as it says there are no symbols loaded. (red unfilled circle with /!)

I open the modules window, right click on my DLL 'PLT2.dll' and try and load the symbols from the symbol path, I select the PDB file which is situated on the network drive right next to the DLL and it says it does not match the module.

I have tried the following based off suggestions I've found on the net:

  • Checked that the code is not set to optimize, and that output debug info it set to full.
  • PDB file definately matches the DLL, I deleted them all, and rebuilt it.
  • The path to symbols on both computers is the same
  • Enabled Just My Code

Has anyone got any ideas on what I could do?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

屋顶上的小猫咪 2024-09-15 17:28:01

远程机器是否会获取不同版本的二进制文件?

如果删除在“符号设置”对话框中添加的所有信息,模块窗口会显示从哪个路径加载二进制文件?

Could the remote machine be picking up a different version of your binary?

If you remove all the info you added in the Symbols Settings dialog, which path does the modules window show the binaries being loaded from?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文