|
|
hResult = pDevice->m_pDevice->GetDeviceData( sizeof(DIDEVICEOBJECTDATA), data, &nEvents, 0 );
if( hResult != DI_OK )
{
if( hResult == DI_BUFFEROVERFLOW )
{
dsi_ConsolePrint ("Input buffer overflow on %s", pDevice->m_InstanceName);
}
else if (hResult == DIERR_INPUTLOST)
{
// Attempt to acquire it and retry .. maybe it got lost.
hResult = pDevice->m_pDevice->Acquire();
hResult = pDevice->m_pDevice->GetDeviceData( sizeof(DIDEVICEOBJECTDATA), data, &nEvents, 0 );
}
}
我在一台机器上面运行在这个居然出现鼠标不能响应的问题,但是键盘都是可以用的,键盘和鼠标是统一处理的,不知道为什么出现这样的问题,
我现在总结出来, 如果不判断DIERR_INPUTLOST的话,那么就出错,所以必须得有DIERR_INPUTLOST的判断,但是不知道什么东西造成了DIERR_INPUTLOST?请知道情况的大哥帮帮忙,先谢谢你们了。 |
|