Когда я создаю новый диалог и вызываю DoModel. Я получаю следующее утверждение отладки.
Код
if (m_pWatchDogDialog->WatchDogServer().CurrentUserStatus() == CServerLink::AWAY)
{
CString msg("Requested user is away");
m_pWatchDogDialog->WatchDogServer().SendUserMessage(m_UserKey, msg);
}
else
{
AcceptFile *dlg = new AcceptFile();
dlg->DoModal(); // error is throwing up here
}
Ошибка как показано ниже
Утверждение находится в точке отладки, как показано на рисунке в файле dlgcore.cpp
Предполагая, что AcceptFile наследуется от CDialog, возможно, вы можете предотвратить утверждение отладки, расширив конструктор AcceptFile, вызвав конструктор CDialog с аргументом lpszTemplateName. Например:
class AcceptFile : public CDialog
{
public:
AcceptFile(LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL)
: CDialog(lpszTemplateName, pParentWnd)
{
// your code here
}
// other stuff
};
Других решений пока нет …