进入不起作用的步骤,但可能会在某些asm步骤后强制执行步骤 [英] Step into not working, but can force stepping after some asm steps

查看:153
本文介绍了进入不起作用的步骤,但可能会在某些asm步骤后强制执行步骤的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我编写的程序中,我想进入OpenSSL函数: 如果按 F11 程序将不会进入该功能.

In a program I've written I would like to step into an OpenSSL function: If I press F11 the program will not step into the function.

但是我可以通过反汇编窗口逐步执行: 从这里,我可以转到X509_NAME_oneline调用: 然后,在完成几次跳转之后,我可以完成以下功能: 接下来,我可以右键单击并转到源代码: 最后,我可以按照通常的方式逐步完成该功能:

However I can step via the disassembly window: From here I can step to the X509_NAME_oneline call: Then, after stepping through a couple of jumps, I can step through the function: Next, I can right-click and go to the source code: Finally I can go back to stepping through the function in the usual way:

我怎样才能使Visual Studio首先直接进入该功能?

How could I get Visual Studio to step directly into the function in the first place?

推荐答案

在使用该库的应用程序中,解决方案是确保链接器针对调试而不是为了加快链接进行了优化:

In the application using the library, the solution was to ensure that the linker is optimizing for debugging and not for faster linking:

先前已将其设置为新的默认值,即

It was previously set to the new default which is /Debug:FASTLINK

该库是使用VS 2015在Windows 10上的常规命令提示符下使用以下命令构建的:

The library was built from a regular command prompt on Windows 10 with VS 2015 with the following commands:

"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat"
perl Configure debug-VC-WIN64A --prefix=C:\Path\to\target\folder
ms\do_win64a
nmake -f ms\ntdll.mak
cd out32dll.dbg
..\ms\test
cd ..
nmake -f ms\ntdll.mak install

这篇关于进入不起作用的步骤,但可能会在某些asm步骤后强制执行步骤的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆