基于Dlg的两个Timer的设置有关问题

基于Dlg的两个Timer的设置问题
我自己生成一个类,是派生自CWnd的,我在这个类里建立了WM_TIMER消息。我在dlg类下生成了之前定义的这个类的对象,然后调用此对象的OnTimer(),结果编译都通过,但是运行就出错。

//   CMyTimerTest.h  
class   CMyTimerTest   :   public   CWnd
{
//{{AFX_MSG(CMyTimerTest)
afx_msg   void   OnTimer(UINT   nIDEvent);
//}}AFX_MSG

DECLARE_MESSAGE_MAP()
}
//   CMyTimerTest.cpp
void   CMyTimerTest::OnTimer(UINT   nIDEvent)  
{
if   (nIDEvent   ==   1){   //   do   sth....}
}


//   CDlgTestDlg.h
class   CDlgTestDlg   :   public   CDialog
{
      CMyTimerTest   mtt;
}
//   CDlgTestDlg.cpp
void   CDlgTestDlg::OnTimer(UINT   nIDEvent)  
{
//   do   sth...

CDialog::OnTimer(nIDEvent);
}

void   CDlgTestDlg::OnButtonSet()  
{
mtt.SetTimer(1,1000,NULL);
}


而且,我设置了断点,结果在AFXASERT.CPP中,
BOOL   bResult   =   _CrtDbgReport(_CRT_ASSERT,   lpszFileName,   nLine,   NULL,   NULL);  
这句过不去.....
请问,我该如何设置?

------解决方案--------------------
该类对象没有界面?不用启动?应该是你用了该类对象,但是该对象尚未创建通过.
------解决方案--------------------
关于线程,看看《win32多线程程序设计》吧。。。
这个不错。
------解决方案--------------------
我想是不是因为你重载了基类的OnTimer函数而出现问题呢,自己换个函数,在基类的OnTimer函数里调用你的函数