您的位置:程序门 -> vc/mfc -> 界面



oncancel()无法正常退出!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


oncancel()无法正常退出!
发表于:2007-07-22 20:27:56 楼主
主程序是基于对话框类的.外加了一个用户登录的对话框.在主程序中调用如下
bool   cpims_1app::initinstance()
{
afxenablecontrolcontainer();
                  ..........
clogindlg   logdlg;
       
if(logdlg.domodal()==idcancel)
{
       
        return   false;
}
                  ....
}
登录对话框中的oncancel()相应cancel按键如下
void   clogindlg::oncancel()  
{
messagebox( "系统退出! ", "登录提示 ",mb_ok);
afxgetmainwnd()-> postmessage(wm_quit);

cdialog::oncancel();
}
可是在调试运行按下cancel按键退出系统时总是有错误的声音,但没有提示信息.
设置断点,发现深入到mfc\src\afxstate.cpp文件中时会有unhandled   exception   in   pims.exe(kernel32.dll)0xe06d7363:microsoft   c++   exception.   提示
这是什么问题呢?

发表于:2007-07-22 20:57:501楼 得分:0
afxgetmainwnd()-> postmessage(wm_quit);

这句有什么用,都已经在退出过程中了,还发送wm_quit消息干嘛?
发表于:2007-07-22 23:55:122楼 得分:0
如果去掉afxgetmainwnd()-> postmessage(wm_quit)
void   clogindlg::oncancel()  
{
messagebox( "系统退出! ", "登录提示 ",mb_ok);
//afxgetmainwnd()-> postmessage(wm_quit);

cdialog::oncancel();
}
退出时错误提示:run   time   erro!this   application   has   requested   the   runtime   to   terminate   it   in   an   unusual   way.


快速检索

最新资讯
热门点击