当模态对话框没有焦点时 MFC EndDialog 崩溃
MFC EndDialog crashes when modal dialog does not have focus
我在结束任务后关闭模态对话框,在我创建模态对话框的单独线程中:
void CmodguiApp::_notify_task_end() {
processingDialog->EndDialog(0);
}
如果我的应用程序有焦点(因此模态对话框有焦点),这会很好地工作。但是,如果我在模式对话框打开时更改 window(例如,如果我离开应用程序处理并切换到 Firefox 等),这会导致应用程序崩溃。
有什么问题吗?
不要使用 EndDialog 结束对话框。而是将带有 WM_CLOSE 或 WM_QUIT 的 PostMessage 发送到对话框 window。
我在结束任务后关闭模态对话框,在我创建模态对话框的单独线程中:
void CmodguiApp::_notify_task_end() {
processingDialog->EndDialog(0);
}
如果我的应用程序有焦点(因此模态对话框有焦点),这会很好地工作。但是,如果我在模式对话框打开时更改 window(例如,如果我离开应用程序处理并切换到 Firefox 等),这会导致应用程序崩溃。
有什么问题吗?
不要使用 EndDialog 结束对话框。而是将带有 WM_CLOSE 或 WM_QUIT 的 PostMessage 发送到对话框 window。