Visual Studio 未使用调试信息生成二进制文件

7kqas0il  于 2023-03-31  发布在  其他
关注(0)|答案(7)|浏览(773)

我正在使用Visual Studio 2013,.Net Framework 4.0和C#。
我试图调试我的项目中的一个文件。我在项目属性中将项目设置为调试构建,未选中“优化”。然而,每当我尝试调试此项目时,它都无法加载符号。因此,我转到模块窗口加载符号,dll将“优化”列设置为“是”,“用户代码”列设置为“否”,以及“符号状态”列中的消息“Binary was not built with debug information”。
我已经清理和重建,重置iis,并手动清理了临时asp.net文件无数次,都无济于事。
有人知道怎么解决吗?

monwx1rj

monwx1rj1#

如果您的项目已经处于调试模式,请在项目的【构建】选项卡中勾选【高级】【构建设置】对话框。
确保Debug Info没有设置为none

Reference:
Stackoverflow
MSDN

jjjwad0x

jjjwad0x2#

对于Visual Studio 2017 for Configuration Release或Debug,您可以为调试信息创建一个pdb文件,如下所示:

  • 在解决方案资源管理器中右键单击项目并选择“属性”
  • 选择“配置属性”
  • 选择“调试”
  • 在“生成调试信息”中选择“是(/DEBUG)”
  • 在“生成程序数据库文件”中输入:$(OutDir)$(TargetName).pdb
owfi6suc

owfi6suc3#

如果您遇到了这个问题,并且这里的其他答案都不起作用,请检查解决方案-〉属性-〉配置,并确保您的项目设置为调试。

ahy6op9u

ahy6op9u4#

如果您尝试从托管代码(C#)调试本机代码(C++),请确保将属性设置为Mixed而不是Native only。
1.右键单击您的项目,然后单击【属性】。
1.在【Debug】选项卡下,进入【Debugger type】部分,将【Application process】修改为【Mixed(Managed and Native)】。
(我遵循了韦斯顿给出的here的答案。谢谢韦斯顿!)

sczxawaw

sczxawaw5#

您试图调试的dll很可能没有在解决方案中生成。您需要找到生成它的位置并获取调试版本(或至少是带有pdb符号文件的发布版本)。

uqzxnwby

uqzxnwby6#

我解决这个问题的方法是在两个地方设置调试模式

  1. solution〉properties〉configuration属性〉configuration(选择代码所在的项目,并将配置设置为debug)
    1.右键单击要调试的项目〉属性〉将配置设置为调试
    清理,重建,你就可以走了
qni6mghb

qni6mghb7#

对于Visual Studio 2019,右键单击解决方案资源管理器中的项目,然后选择“属性”-〉选择编译-〉单击高级编译选项-〉将生成调试信息设置为完整。然后清理解决方案并重建解决方案。

相关问题