在我的项目中,我无法跟踪项目发生的位置。 当我查看调用堆栈时,它给出了
mfc100d.dll!_DllMainCRTStartup(void* hDllHandle, unsigned long dwReason, void *lpreserved)
ntdll.dll!77328968()<br/>
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
ntdll.dll!77335c11()<br/>
ntdll.dll!7733500a()<br/>
ntdll.dll!773335e9()
然后代码跳转到
CWinApp::InitInstance()
.
但它是如何去!_DllMainCRTStartup
对我来说是一项艰巨的任务。
我从昨天开始尝试,但找不到它。
注意: 在设置中:
Entry point is blank
No Entry: No
最佳答案
您可以加载 Microsoft 调试符号来解析 [下面的帧可能不正确和/或丢失,没有为 ntdll.dll 加载符号]
并以两种方式查看实际堆栈:
- 在调用堆栈上右键单击一个条目,选择
Symbol Settings...
,然后按Load Symbols from Microsoft symbols servers
Tools -> Options -> Debugging -> Symbols
将引导您进入相同的对话框并再次按Load Symbols from Microsoft symbols servers
这至少应该解析堆栈并显示系统调用。
关于c++ - 无法在 C++ 中跟踪 Visual Studio 入口点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15085114/