游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1705|回复: 0

请高手看一下,我想用模拟键盘,问题出在哪了.

[复制链接]

1

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2008-1-5 23:29:00 | 显示全部楼层 |阅读模式
        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;
                }
        }
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-23 22:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表