使用Windows MFC C++。我有一个第三方应用程序,它在我的CWinApp派生类中调用用户定义的方法。这个方法在InitInstance()之后被调用。如果在这个方法中有一个错误,例如抛出一个异常并被try/catch块捕获,我想从catch块中退出应用程序。什么是规范和正确的戒烟方式?以编程方式退出MFC应用程序的正确方法是什么?
UPDATE:
哔叽我认为是正确的,在InitInstance中()返回false是退出应用程序的正确方法。但是,现在假设我想退出CDialog派生类的OnInitDialog()处理程序,那么正确的方法是什么。
更新2
对于我来说,我发现调用PostMessage的(WM_CLOSE)是从我的非模态CDialog派生类的最佳途径。在某些情况下,我尝试过的所有其他戒烟方法都会引发一些异常或其他情况。
这里是我如何使用它的一个例子:
BOOL SomeDialog::OnInitDialog()
{
CDialog::OnInitDialog();
::OleInitialize(nullptr);
try
{
// ...load settings file here
}
catch(...)
{
PostMessage(WM_CLOSE);
return TRUE;
}
// return TRUE unless you set the focus to a control
return TRUE;
}
啊!这是一个基于对话框的应用程序。看到我编辑的答案。 –