windBG源代码调试,在局部变量窗口中看不到局部变量
windbg source code debug ,can not see local variable in locals window
我正在使用windbg处理远程调试,一切正常,我可以使用f10或f11进行步进调试。我的调试环境是win7,语言是c ++。
有一个问题,我在函数中看不到局部变量,如下图所示。
为什么会出现这种情况?在我看来,如果我能看到过程的所有寄存器,我一定能看到bRet的局部变量。
有人可以帮助我吗?非常感谢。
这是代码
bool CNBAGFxFont::Init()
{
bool bret = true;
m_pFontlib = *new GFxFontLib();
if (m_pFontlib)
{
bret = m_pFontlib->Init();
}
if (!bret)
{
m_pFontlib = NULL;
m_pGFxLoader->SetFontProvider(NULL);
return bret;
}
//m_pFontMC = *m_pGFxLoader->CreateMovie("gfxfontlib.swf");
//m_pFontlib->AddFontsFrom(m_pFontMC, true)
}
这是调试时的屏幕截图
该程序经过优化编译。
来自OP的评论:
如果我禁用了优化,WinDbg 可以工作,我可以在窗口中看到局部变量
相关文章:
- 使用的未初始化局部变量'Quick'
- 修复未初始化的局部变量错误
- 局部变量保留函数中的值
- 如何使用 C++ 中的继承函数访问派生类中的局部变量
- 将引用分配给局部变量,如果局部变量超出范围,它会超出范围吗?
- Gnuplot_i.hpp C++接口绘制局部变量而不是文件
- 如何在函数外部访问函数中局部变量的值?
- 赋予全局变量而不是局部变量优先级的函数 - (异常行为)
- C++中静态方法的局部变量范围
- 未初始化的局部变量错误甚至认为我初始化了它(C++)
- 离开范围后如何保护局部变量的值?
- 局部变量名称冲突
- C++ lambda:如何'freeze'局部变量的值?
- 我应该使我的局部变量常量还是可移动的
- 获取具有静态局部变量的绑定/推断捕获 lambda 的函数指针
- 全局和局部变量初始化与 constexpr 的差异背后的基本原理
- 返回对局部变量 - C++ 的引用
- 是否可以影响 C++ 中回调函数的局部变量?
- windBG源代码调试,在局部变量窗口中看不到局部变量
- 当类型为shared_ptr<base_type>时,在"局部变量"窗口中将本地作为派生类型查看