阅读:1950回复:5
请给个XP下安装HID驱动的建议,谢谢
在XP下HID默认的驱动是INPUT.INF指定的,我想让他安装我的驱动。我知道如果用户先插上我的设备再运行我的SETUP 程序我可以用UpdateDriverForPlugAndPlayDevices(...),可是如果用户先运行我的SETUP程序再插上设备或一段时间后插过一个USB口该怎么办。在2000下只要把我的INF文件拷贝到INF目录下就OK了。可是在XP下怎么办。谁给我点建议
|
|
|
沙发#
发布于:2002-11-19 17:39
给你说过了,不可能的。就别瞎努力了。你这些招,我很久以前就试过。没有一种能OK的。不要相信微软的鬼话。
|
|
板凳#
发布于:2002-11-20 10:54
谢谢Sam_h,我会给分的,我不是说了吗上次的分变0了我想给也没办法啊。知道XP的是按什么顺序列举设备驱动的吗?在2000下是按HARDWARE_ID的匹配程度吧?
|
|
|
地板#
发布于:2002-11-20 11:40
大体说一下,我也没有深入研究:
1、认证的INF文件+VID&PID匹配 2、认证的INF类文件(例如:INPUT.inF) 3、匹配的VID&PID的INF文件。 如果你的设备不是HID设备,只是一个USB设备(在INF文件里面的CALSS=USB而不是HIDClass),那么它还是找你的inf文件的。 一旦你指定它是一个HIDClass,那么Windows首先就一定找Input.inf文件的! Win2K就不一样。它是: 1、认证的INF文件+VID&PID匹配 2、匹配的VID&PID的INF文件。 3、认证的INF类文件(例如:INPUT.inF) 可以看出于XP不同。 我不知道你的具体要求,我猜你是不是要加一个过滤程序?如果是的话,你可以这样做: 自己做一个安装程序,首先检测用户是否已经把设备插入。如果插入,那么你可以用API把过滤部分的注册加上(好像WALTOney例子里面有加过滤注册表的例子)。如果用户没有插入,那么提示用户插入你的设备(程序里面定时循环检测设备,知道检测到,表明用户已经插上了,这时用的是input.inf文件),然后同理加上相应的注册信息。 |
|
地下室#
发布于:2002-11-20 11:53
如你所说我确实是要加个过滤驱动。可是这样的话,如果用户换过一个USB口后就没办法了啊。
|
|
|
5楼#
发布于:2002-11-20 14:18
解决办法:自己做一个托盘程序,时刻运行并检测,如果发现新的设备插入,添加注册表后并需要提示用户在重新插入(否则过滤驱动没有run起来呀)。
另外:我不知道你的HID设备是什么。如果是游戏杆的话,可以在控制面版的测试界面中做这些工作。我就是这么做的。:) |
|