代码之家  ›  专栏  ›  技术社区  ›  Mason Wheeler

是什么问题导致Visual Studio说“此模块的调试信息中缺少源信息”?

  •  0
  • Mason Wheeler  · 技术社区  · 3 年前

    我正在为CLR开发一个编译器,而且我大部分时间都在使用它。我正在尝试生成调试信息,我可以让它在生成的程序集中创建一个嵌入的PDB,其中所有调试元数据看起来都是正确的。当我加载程序集时,Modules视图显示“Symbols loaded”。但我无法让调试器识别断点,如果我在代码中抛出异常,它会显示,

    来源不可用

    此模块的调试信息中缺少源信息。

    当我在DotPeek中查看程序集时,它不会在程序集的主名称行上显示“Debug”,就像它对使用调试信息构建的C#程序集所做的那样。不过,我不确定遗漏了什么。

    是什么原因导致出现此错误?如果有人需要查看测试用例, here's one.

    编辑: 请阅读问题并记下标签。我在这里得到了几个不同的答案,这是沼泽标准的“如何在正常情况下加载PDB”答案。 这个问题与正常情况无关。 我正在构建编译器,它正在生成不正确的PDB。我需要一种方法来调试我自己生成的PDB代码的输出。

    0 回复  |  直到 3 年前