今天下午外出办事。晚上吃饺子~~
好好吃啊~
DirectInput在初始化的时候困扰了我近半天的时间。令我困惑的是代码跟原来我写的旧的初始化代码完全一样,但是每当执行到Acquire()的时候,就会返回E_ACCESSDENIED。google过相关资料,还是没有任何头绪。最后翻出圣剑2的代码看它是在哪个地方初始化的。发现它是在收到WM_ACTIVE消息之后获取设备的。我还发现当我运行调试如果窗口并不是当前窗口的话,获取设备会失败。如果在Acquire()那一步游戏窗口是处于激活状态的,则不会出现问题。问题就这样解决了。至于原来的程序为何不会出现这类错误,就懒得再考究了。
就快要开学了,时间又少了。真是个郁闷麻烦的事情。sigh!无聊的生活。
DirectInput在初始化的时候困扰了我近半天的时间。令我困惑的是代码跟原来我写的旧的初始化代码完全一样,但是每当执行到Acquire()的时候,就会返回E_ACCESSDENIED。google过相关资料,还是没有任何头绪。最后翻出圣剑2的代码看它是在哪个地方初始化的。发现它是在收到WM_ACTIVE消息之后获取设备的。我还发现当我运行调试如果窗口并不是当前窗口的话,获取设备会失败。如果在Acquire()那一步游戏窗口是处于激活状态的,则不会出现问题。问题就这样解决了。至于原来的程序为何不会出现这类错误,就懒得再考究了。
就快要开学了,时间又少了。真是个郁闷麻烦的事情。sigh!无聊的生活。