VS 2008 调试 - 查找加载了哪个对话框

Posted

技术标签:

【中文标题】VS 2008 调试 - 查找加载了哪个对话框【英文标题】:VS 2008 Debugging - Find which dialog is loaded 【发布时间】:2013-11-15 06:09:10 【问题描述】:

我是 Visual Studio /C++ 的新手,我得到了一个包含大量对话框、弹出窗口等的项目。调试时我想知道哪个对话框加载到屏幕上。有没有办法在visual studio中找到它?

谢谢。

编辑 - 我无法设置断点,因为我不知道执行对话框的代码位于何处(因为代码库非常大,很难找到)。我想要的是当一个对话框似乎知道它的名字时,即 - IDC_DIALOG_NAME 等..

【问题讨论】:

什么意思?你的意思是你想在表单的负载上运行一些东西? 【参考方案1】:

只需在调试器中点击 Break-All 并查看调用堆栈!

【讨论】:

【参考方案2】:

这真的很简单,但是,当一个对话框出现时,它通常有一个标题。您可以轻松地在资源文件中搜索标题,它应该指出拥有它的对话资源(例如 ID)。从那里,您可以在代码库中搜索对话框资源的定义。这应该会引导您进入正确的对话框类。

【讨论】:

【参考方案3】:

不确定您对调试的熟悉程度,所以我会像您一般来说是新手一样解释它。您将要先设置一些断点。您可以通过右键单击要放置断点的位置的行来执行此操作,即断点>插入断点。

编译后,断点将在代码中的该行暂停程序。暂停后,您可以查看有关程序当前保存的数据的大量信息。为此,请按 alt+4 拉出局部变量窗口。此窗口显示暂停时局部变量的所有当前值。如果你想关注一个变量,你可以右键单击它,然后选择“watch”。这是在它自己的选项卡中隔离变量,并且当您在断点之间步进时,您可以更轻松地遵循它的值。

因此,如果您要查看正在输出对话框的任何类或函数的值,这将是一个很好的方法。

http://msdn.microsoft.com/en-us/library/vstudio/y740d9d3(v=vs.90).aspx此页面可能会为您提供一些额外的帮助!

【讨论】:

以上是关于VS 2008 调试 - 查找加载了哪个对话框的主要内容,如果未能解决你的问题,请参考以下文章

关于“调试会话的可执行文件”对话框

MSVS 2008 如何MFC添加控件?

VS2010 调试 页面一直加载,急!!!

vs2012 输出窗口报错 “无法查找或打开 PDB 文件”

将 VS6 MFC 对话框应用程序外观升级到 VS2008

vs2008 mfc 如何在对话框中加入一个menu