0

I am using VS2010 for my MFC SDI application. In MainFrame Class in OnCreate(LPCREATESTRUCT lpCreateStruct) function I am opening one dialog box and on IDCANCLE replay from the Dialog box I want to close my application. I am using following code for the same in onCreate Function.

CTermsConditionDlg objTNCDlg;
if(!objTNCDlg.DoModal() == IDCANCLE){
return -1;
}

Now my Question is after return Statement the application is Showing message box as shown in Image. Message on close

I want to disable this message box and close my application. Can any one help how can I do That. Thank You in Advance.

4

1 回答 1

0

为什么你把这个对话框放在初始化的这么晚?问题在于 SDI 框架依赖于一些预期会始终运行的初始事物。在这种情况下,总是希望可以创建大型机。请参阅 CSingleDocTemplate::OpenDocumentFile 中的代码

只需在调用 LoadFrame 或 ProcessShellCommand 之前将此代码放入 InitInistance。在这种情况下,您可以轻松终止而不会出现问题。

另一个想法是允许创建窗口,但只需使用 PostMessage(WM_CLOSE); 在这种情况下,初始化已完成,一切都已创建,应用程序再次终止。

于 2014-01-08T07:05:15.607 回答