游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2333|回复: 1

再次流泪求救:DirectInput查询获取游戏杆设备(joystick)的

[复制链接]

2

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2004-11-30 11:15:00 | 显示全部楼层 |阅读模式
    我想将游戏手柄装上用MSDN提供的那个游戏杆力反馈例程进行编程,可是运行程序却根本不能枚举EnumDevice获得游戏手柄,系统找到了设备(北通的手柄),装了驱动,在DirectX诊断DirectIput里面也找到了设备,还可以对其进行设置,怎么那个例程运行弹出“找不到任何设备”,就是找不到设备呢?部分代码如下
    哪位大哥用过的能否提供一个获取游戏手柄的例程源码给我?或者帮我看看问题出在哪里万分感 激!在线等!

我的邮箱:i_fuleyou@126.com

BOOL CALLBACK
EnumFFJoysticksCallback(LPCDIDEVICEINSTANCE pinst, LPVOID lpvContext)
{
HRESULT hr;
LPDIRECTINPUTDEVICE pdev;
LPDIRECTINPUTDEVICE2 pdev2;

hr = g_pdi->CreateDevice(pinst->guidInstance, &pdev, NULL);
if (FAILED(hr)) {
return DIENUM_CONTINUE;
}

hr = pdev->QueryInterface(IID_IDirectInputDevice2,
(LPVOID *)&pdev2);
pdev->Release();

if (FAILED(hr)) {
return DIENUM_CONTINUE;
}
g_pJoystick = pdev2;
return DIENUM_STOP;

}

BOOL
DIInit(HWND hwnd)
{
HRESULT hr;
hr = DirectInput8Create(g_hinst, DIRECTINPUT_VERSION,IID_IDirectInput8, (void**)&g_pdi, NULL);

if (FAILED(hr)) {
Complain(hwnd, hr, "DirectInputCreate");
return FALSE;
}

hr = g_pdi->EnumDevices(DI8DEVTYPE_JOYSTICK,
EnumFFJoysticksCallback,
NULL,
DIEDFL_ATTACHEDONLY | DIEDFL_FORCEFEEDBACK);

if (g_pJoystick == NULL) {
Complain(hwnd, hr, "Couldn't find any force feedback joysticks");
return FALSE;
}


2

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
 楼主| 发表于 2004-11-30 14:44:00 | 显示全部楼层

Re:再次流泪求救:DirectInput查询获取游戏杆设备(joystick

怎么没有人回啊?
     没有一个人用过么???
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-23 11:53

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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