本文整理汇总了C++中LPDIRECTINPUTDEVICE8W::GetDeviceData方法的典型用法代码示例。如果您正苦于以下问题:C++ LPDIRECTINPUTDEVICE8W::GetDeviceData方法的具体用法?C++ LPDIRECTINPUTDEVICE8W::GetDeviceData怎么用?C++ LPDIRECTINPUTDEVICE8W::GetDeviceData使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LPDIRECTINPUTDEVICE8W
的用法示例。
在下文中一共展示了LPDIRECTINPUTDEVICE8W::GetDeviceData方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetDeviceData
HRESULT _stdcall GetDeviceData(THIS_ DWORD a,LPDIDEVICEOBJECTDATA b,LPDWORD c,DWORD d) {
//Switch not necessary because only keyboard is faked
//TODO: When adding mouse support remember to check sequence
if(*c==1&&SkipIntro) {
//Skip the second intro
SkipIntro=false;
FakeBuffer[0].dwOfs=0x01;
FakeBuffer[0].dwData=0x80;
FakeBuffer[0].dwSequence=1;
FakeBuffer[0].dwTimeStamp=::GetTickCount();
FakeBuffer[0].uAppData=0xffffffff;
*b=FakeBuffer[0];
return DI_OK;
} else if(*c==1&&UseFakeBuffer>0) {
//Inject a fake keypress
*b=FakeBuffer[--UseFakeBuffer];
if(UseFakeBuffer==0) FinishedFake=true;
return DI_OK;
} else {
//Read a real keypress
HRESULT hr2=RealDevice->GetDeviceData(a,b,c,d);
if(*c>0&&b) {
sequence=b[*c-1].dwSequence+1;
}
return hr2;
}
}
示例2: GetDeviceData
HRESULT _stdcall GetDeviceData(DWORD a,LPDIDEVICEOBJECTDATA b,LPDWORD c,DWORD d) {
return RealDevice->GetDeviceData(a,b,c,d);
}