为什么我的软件不能在不同的主板上初始化硬件?

时间:2009-02-26 00:28:36

标签: c# hardware usb driver

我不是开发人员,但我认为我的问题很有意思(而且我非常绝望)在stackoverflow上发布这里

我公司使用C#编写的程序来驱动使用.Net 2.0 SP1和USB签名板的自助服务终端PC。签名板是使用通用Microsoft HID驱动程序的HID。

我们尝试在使用与之前使用的不同品牌主板的自助服务终端PC上安装我们的软件。我们从技嘉电路板转移到华硕电路板。除了品牌,规格是相同的,相同的北桥,相同的南桥,相同的CPU,相同的主机控制器等。此外,我们的安装程序已记录在案,并且几个月内没有变化。

在新主板上,签名板被识别为HID,安装没有问题,制造商软件可以运行该设备,但我们的软件无法识别该设备是否已连接。唯一改变的是主板品牌。可以初始化设备的制造商软件不是用C#编写的。

欢迎提出任何想法,建议或解决方案!!!!

3 个答案:

答案 0 :(得分:2)

这可能与编程/有关,但我在想它的硬件/驱动程序问题。

您可以尝试删除所有驱动程序并在计算机管理下重新安装新驱动程序。

大多数不同型号/品牌的新主板需要重新安装窗户。

答案 1 :(得分:1)

如果它不是硬件/驱动程序问题,那么可能会发生一些其他事情。

在黑暗中有点(很多)刺,但可能是自助服务终端软件可能有一个硬编码的字符串或埋藏在其中的“幻数”,旨在识别特定配置中的特定设备,特别是如果软件制造商将其设计为仅在一个特定的板和配置上工作。

这不应该发生,但在地球上,它有时(经常)会发生。我很久以前就开始研究POS软件,这样做是为了强制供应商锁定硬件供应(不是我的想法)。

我会环顾四周看看两块主板上HID的硬件ID是什么,看看它们是否有任何不同。

最好的做法可能是与软件提供商联系,但如果这不是一个选项,您可以获得一些关于程序内部的见解,以及使用反射器的任何硬编码设备标识符:{{ 3}}。

请注意,由于您不是开发人员,这可能看起来像希腊语(如果您精通希腊语,请插入您不理解的任何其他语言),并解释这一切意味着超出此范围的范围回答。但要寻找的东西是第一块板上的HID的硬件ID,或链上到USB控制器的任何其他东西。

答案 2 :(得分:0)

您可以运行某种调试器或登录两块板,看看设备返回的状态等等吗?