BOOL CMyApp::InitInstance()
{
CWinApp::InitInstance();
AfxEnableControlContainer();
::MessageBox(NULL,"AAAAAA","1111",MB_OK); // Тут выводится
CMyDlg dlg;
m_pMainWnd = &dlg;
dlg.Info = &Info;
dlg.DoModal();
::MessageBox(NULL,"AAAAAA","1111",MB_OK); // Не выводится
}
Не выводится MessageBox()
И как это можно исправить?
Вот код:
Код:
Пробовал AfxMessageBox() - тоже не выводится
Может его просто перекрывает модальный диалог?
В твоем случае второй мессаджбокс должен выводится при закрытии проги. Может ты ее через ТерминатеПроцес гасиш?
Т.е. создал проект на основе обычного диалога и добавил пару строк (MessageBox...).
Ну тебе правильно сказали. DoModal вызывает модальный диалог и упраывление на второй MesageBox не перейдет, пока не закроеться диалог = не завершиться DoModal. Уверен, что по закрытию не вызываеться?
И в каком именно диалоговом окне ты хочешь выводить MessageBox - в первом или во втором?
[/QUOTE]
ВОбщето обязательно в данном случае. Потому что это WinAPI функция MessageBox, а не метод класса, где заданны параметры по умолчанию. И четвертый параметр являеться обязательным - хоть что то там написать надо. А если нужна только кнопка ОК, что там еще писать кроме MB_OK =))
Можно просто передавать 0, как часто обозначают значение по умолчанию. А если посмотреть внимательно, 0 - это и есть MB_OK. :)
Ну как вы правильно заметили передавая 0 мы уже передаем MB_OK =))