2011-04-14 40 views
1

我正在使用USB设备的Windows驱动程序,并且安装必须覆盖Microsoft的内置类驱动程序,以便设备使用我的驱动程序。Windows XP自定义USB类驱动程序,预安装没有WHQL签名?

驱动程序是自签名的,但不是WHQL签名的。在Vista或Win7上安装不是问题,其中SetupAPI将驱动程序确认为已签名,并将其选作内置类驱动程序的首选驱动程序。

但是,这在Windows XP SP3上不起作用。 SetupAPI日志告诉我它找到驱动程序,但认为它不可信。 (日志摘录:“驱动程序节点不可信,排名从0x00000001更改为0x0000c001”)

以前对类似问题的回答在这里stackoverflow和其他地方,表明WHQL签名是这个工作在XP上的唯一方法。这是真的,还是有任何已知的解决方法?

有没有人与资源有任何关于变通方法或解决方案的信息的链接?

我很感激任何关于此事的帮助。

回答

0

是的,情况确实如此。

我可能已经提到过我们在我的项目中使用的解决方法,但这与您无关,因为您的产品适用于广泛的市场,而且您不能依赖具有静态设备实例ID的设备。 (为了保持“已知的”设备实例ID,我们在USB集线器上使用了一个过滤器驱动程序,我只提到这一点,因为您可能会对我们使用的“神秘”解决方法感到好奇)。方式,也许你可以重写你的驱动程序作为设备过滤驱动程序。他们不受同样的WHQL限制。

编辑:如果你愿意安装证书到客户的根证书存储区(可能会疏远你的客户一个冒险的选择),也可能是您的解决方案: Preinstalling WinXP USB drivers to be able to connect device without interaction