一、方法一:通过找到主窗口的句柄,然后向主窗口发送消息
//该函数用来实现对软件系统的退出
void CMainFrame::OnExitSystem()
{
// TODO: Add your command handler code here
if (MessageBox("确定退出系统吗?","提示",MB_YESNO | MB_DEFBUTTON2) == IDYES)
{
//获取当前主窗口的句柄,向主窗口发送WM_CLOSE消息
::PostMessage(AfxGetMainWnd()->GetSafeHwnd(),WM_CLOSE,0,0);
}
}
方法二:直接获执行前窗口的OnClose()函数,实现系统的关闭
//该函数用来实现对软件系统的退出
void CMainFrame::OnExitSystem()
{
// TODO: Add your command handler code here
if (MessageBox("确定退出系统吗?","提示",MB_YESNO | MB_DEFBUTTON2) == IDYES)
{
CFrameWnd::OnClose();
}
}
二、VC中常用的几个关闭窗口和退出系统的语句
)On
2)PostQuitMessage(0);//最常用
3)exit(1);//据说已经不常用了
4)ExitProcess(0);
5)SendMessage(WM_CLOSE);
6)((CMainFrame*)AfxGetMainWnd())->SendMessage(WM_CLOSE);