WaitForSingleObject(hEvent,2000);函数返回值WAIT_FAILED!该如何解决

WaitForSingleObject(hEvent,2000);函数返回值WAIT_FAILED!!
MDI程序,声明一个事件句柄为全局变量
HANDLE m_hEvent; //判断是否超时线程

然后在CChildFrame::OnCreate()函数中创建
m_hEvent=CreateEvent(NULL,TRUE,FALSE,NULL); 调试发现句柄非NULL;

然后在一个多媒体定时器中定时调用函数中使用。

在一个线程函数中使用WaitForSingleObject

ResetEvent(m_hEvent);

SendData(pData,length);


DWORD dwEvent=WaitForSingleObject(m_hEvent,3000);
if(dwEvent == WAIT_OBJECT_0) 
{
  //正常返回
}
else if(dwEvent==WAIT_FAILED)
{
  //出现了错误!!!
}
else
{
  //超时
}


代码之前运行一致正常。今天调试 发现WaitForSingleObject函数不等待一定时间,直接就运行过了。

追踪后发现是返回了错误,请问是什么原因导致的?????之前都是正常的。



------解决方案--------------------
WAIT_FAILED indicates failure. Waiting on an invalid handle causes WaitForSingleObject to return WAIT_FAILED.

等待的句柄无效了
------解决方案--------------------
对句柄m_hEvent进行初始化试试呢。
------解决方案--------------------
GetLastError()看看返回什么~~~
------解决方案--------------------
给句柄给个名称试试
------解决方案--------------------
GetLastError看什么错
------解决方案--------------------
GetLastError();的值是什么?
是不是你其它地方CloseHandle()了
------解决方案--------------------
我也遇到了相同的问题,求答案