使用MSVC 2017,我正在使用“附件”处理从控制台使用MSVC或CLANG进行的编译(我正在编译编译器生成的asm代码)。每当我中断程序时,我只会得到“无反汇编可用”。我知道它不能显示C ++代码,它没有任何符号,但是asm代码应该不是问题,对吗?有什么想法吗?
编辑:我没有做任何混淆或任何事情。这是我正在测试的一个非常简单的“几行”程序。
Edit2:如果我放置__asm {int 3};并设法足够快地连接调试器,中断会停止调试器,我可以查看反汇编。
答案 0 :(得分:1)
来自MSDN论坛的人解决了它;)
您可以确定,在“调试->选项...”“调试->常规”中 选中“启用地址级别调试”。 选中“如果没有源,则显示反汇编”。 取消选中“仅启用我的代码” -因为当VS找不到带有行信息的符号时-专用pdb-假定它是“外部”代码。 如果您在计算机级别上调试更多,请单机调试 WinDbg预览 https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debugging-using-windbg-preview