【】MFC对话框程序中SetTimer定时器无法响应?解决办法

【】MFC对话框程序中SetTimer定时器无法响应?
void CToolDlg::OnTimer(UINT nIDEvent) 
{
// TODO: Add your message handler code here and/or call default
MessageBox("已进入OnTimer函数");
if (nIDEvent == 10)
{
Timer1 ++;
MessageBox("定时器中...");
if (Timer1 == 5)
{
PCPause = 0;
Timer1 = 0;

}

}

CDialog::OnTimer(nIDEvent);
}

void CToolDlg::OnButton_Delaysend() 
{
// TODO: Add your control notification handler code here
SetTimer(10,1000,NULL);
PCPause = 1;
m_mscom.SetOutput(COleVariant(m_Send));
while(PCPause);
MessageBox("已经发送一次");
m_mscom.SetOutput(COleVariant(m_Send));
MessageBox("已经发送两次");
KillTimer(10);
}

没有一个MessageBox能弹出,也就是说OnTimer没响应,这是为什么?求解!


------解决方案--------------------
while(PCPause);

死循环了,要等OnButton_Delaysend退出才能进OnTimer, 这是一个线程的
------解决方案--------------------
探讨
之前单片机中这么写过,就放到这里了,没想到不行。那么如果我想让程序在这停留几秒仍用这种定时方式该如何写呢?

------解决方案--------------------
单线程 的执行顺序楼主没搞明白吧 呵呵
想测试 settimer 把 killtimer 放到 ONtimer 里面执行 看看 
当然 还得把你的 死循环干掉