MFC程序,DEBUG无问题,Release版直接挂掉
此时,程序未运行我新写的任何一段代码
挂掉时的堆栈:
MFC42! 73d31b5f()
MFC42! 73d31a58()
MFC42! 73dc847d()
USER32! 77d18734()
USER32! 77d18816()
USER32! 77d1b4c0()
USER32! 77d1b50c()
NTDLL! 7c92e473()
USER32! 77d1fecc()
USER32! 77d1ff66()
MFC42! 73d3bba4()
MFC42! 73d3dabd()
MFC42! 73d3e668()
MFC42! 73d3e614()
MFC42! 73d31e91()
MFC42! 73d31b9b()
MFC42! 73d31b05()
MFC42! 73d31a58()
MFC42! 73dc847d()
USER32! 77d18734()
USER32! 77d1d05b()
USER32! 77d1b4c0()
USER32! 77d1f9fe()
NTDLL! 7c92e473()
USER32! 77d1fecc()
USER32! 77d1ff66()
MFC42! 73d3bba4()
MFC42! 73d3d94d()
MFC42! 73d3d726()
MFC42! 73d3d675()
MFC42! 73d3f4f3()
MFC42! 73d42b8b()
MFC42! 73d324c0()
MFC42! 73d323bf()
MFC42! 73dcafca()
CUI_TemperMonitorApp::InitInstance() line 95 + 12 bytes
MFC42! 73d3cf74()
KERNEL32! 7c816fe7()代码显示死在App类的InitInstance函数中:
// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
// cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;
ParseCommandLine(cmdInfo); // Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdInfo))
return FALSE;
即调用ProcessShellCommand(cmdInfo)函数时,我知道这个函数是创建新文档的,
Debug跟进去没发现任何问题,但是Release附加了调试信息也进不去苦觅无果,现散分求解,望高人相助!
此时,程序未运行我新写的任何一段代码
挂掉时的堆栈:
MFC42! 73d31b5f()
MFC42! 73d31a58()
MFC42! 73dc847d()
USER32! 77d18734()
USER32! 77d18816()
USER32! 77d1b4c0()
USER32! 77d1b50c()
NTDLL! 7c92e473()
USER32! 77d1fecc()
USER32! 77d1ff66()
MFC42! 73d3bba4()
MFC42! 73d3dabd()
MFC42! 73d3e668()
MFC42! 73d3e614()
MFC42! 73d31e91()
MFC42! 73d31b9b()
MFC42! 73d31b05()
MFC42! 73d31a58()
MFC42! 73dc847d()
USER32! 77d18734()
USER32! 77d1d05b()
USER32! 77d1b4c0()
USER32! 77d1f9fe()
NTDLL! 7c92e473()
USER32! 77d1fecc()
USER32! 77d1ff66()
MFC42! 73d3bba4()
MFC42! 73d3d94d()
MFC42! 73d3d726()
MFC42! 73d3d675()
MFC42! 73d3f4f3()
MFC42! 73d42b8b()
MFC42! 73d324c0()
MFC42! 73d323bf()
MFC42! 73dcafca()
CUI_TemperMonitorApp::InitInstance() line 95 + 12 bytes
MFC42! 73d3cf74()
KERNEL32! 7c816fe7()代码显示死在App类的InitInstance函数中:
// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
// cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;
ParseCommandLine(cmdInfo); // Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdInfo))
return FALSE;
即调用ProcessShellCommand(cmdInfo)函数时,我知道这个函数是创建新文档的,
Debug跟进去没发现任何问题,但是Release附加了调试信息也进不去苦觅无果,现散分求解,望高人相助!
一点注意:不要认为debug行,release就一定行。
return FALSE;
这句注释掉Release就没问题吗?
在ParseCommandLine之前执行了哪些代码?
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
挂掉的继续等待高人哦
直接注释掉,m_pMainWnd都是NULL,后面就直接空指针访问了
难道是我的view类的原因引起来的
MainFrame、view和doc类的初始化都查过,仅仅也就知道一个范围