阅读:1521回复:0
[求助]deviceiocontrol异步错误HANDLE hFile = = CreateFile(this->m_linkname , GENERIC_READ , 0 , NULL , OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED, NULL); OVERLAPPED ol = {0}; ol.hEvent = ::CreateEvent(NULL , FALSE , FALSE , NULL); ::DeviceIoControl(hFile , TESTDRIVER, 0 , NULL, buf , 4 , &dwRet , &ol); //等待受信,貌似不能成功。。。 while(::WaitForSingleObject(ol.hEvent , 300) == WAIT_TIMEOUT) { AfxMessageBox("等待中"); } 在WaitForSingleObject的时候不会弹出对话框,貌似线程阻塞住了,一直等到DeviceIoControl执行成功之后才会恢复。 请问下这个是什么原因 |
|