|
|
HWND htext = GetDlgItem(hDlg,IDC_EDIT1);
::SetFocus(htext);
DIDEVICEOBJECTDATA rgdod ;
ZeroMemory(&rgdod,sizeof(DIDEVICEOBJECTDATA));
rgdod.dwTimeStamp = ::GetTickCount();
rgdod.dwSequence = 0;
rgdod.dwData = 0x80;
rgdod.dwOfs = DIK_A;
DWORD dwInOut = 1;
HRESULT hr=g_pKeyboard->Acquire();
if(FAILED(hr))
{
if(hr == DIERR_INPUTLOST)
{
MessageBox(hDlg ,"lost","caption",MB_OK);
}
}
hr = g_pKeyboard->SendDeviceData(sizeof( DIDEVICEOBJECTDATA ),&rgdod,&dwInOut,DISDD_CONTINUE );
if(FAILED(hr))
{
switch(hr) {
case DIERR_INPUTLOST :
MessageBox(hDlg ,"DIERR_INPUTLOST","caption",MB_OK);
break;
case DIERR_NOTACQUIRED :
MessageBox(hDlg ,"DIERR_NOTACQUIRED","caption",MB_OK);
break;
case DIERR_REPORTFULL :
MessageBox(hDlg ,"DIERR_REPORTFULL","caption",MB_OK);
break;
case DIERR_UNPLUGGED :
MessageBox(hDlg ,"DIERR_UNPLUGGED","caption",MB_OK);
break;
case E_NOTIMPL :
MessageBox(hDlg ,"E_NOTIMPL","caption",MB_OK);
break;
default:
//总是到这里呢.
MessageBox(hDlg ,"other","caption",MB_OK);
break;
}
}
|
|