关于While(stat)的消息介入有关问题

关于While(stat)的消息介入问题!
一个循环!  
while(stat)
{
  。。。。。
。。。。。。
}

我想通过出发一个按钮消息函数改变正在循环中stat为FALSE,跳出循环!
可惜做不到!   消息好想根本就没有执行!
高手有什么办法   在消息函数改变stat为FALSE   实现终止上面的循环“??


------解决方案--------------------
可以定义一个函数
bool GetStat()
{
......
}
while(stat)
{
stat=GetStat();
。。。。。
。。。。。。
}
就可以了
------解决方案--------------------
if (::PeekMessage(&message, NULL, 0, 0, PM_REMOVE)) {
::TranslateMessage(&message);
::DispatchMessage(&message);

放在while里可以解决了