场景:关键计算机系统由操作员通过标准USB键盘和鼠标控制。此外,还有一个DVI监视器连接到查看操作员定位的GUI。计算机系统运行基于Windows 7 Professional或Windows Embedded Standard 7(“系统软件”)的软PLC系统。检测硬件组件的断开/断开(Windows 7)
问题:是否有软件解决方案,以检测USB HID的器件的损耗(断开/失败),例如键盘或鼠标,和单DVI-显示?这一点很重要,因为不能期望关键系统能够正常工作,而操作员无法操作或看到显示的内容。
自己的考虑:这可能需要低级别的WINAPI调用,这很好。我在想,一个Windows服务可能会不断寻求枚举键盘和显示器的数量 - 甚至可能通过型号或序列号来识别它们。如果此枚举和/或标识达到零或完全失败,则系统软件当然必须快速且适当地进行反应(即,进入故障模式或类似模式)。
就我所见,这是所有关键操作员控制系统的普遍问题。问题是:对于这个存在的软件或硬件是否已经存在?
注:操作员总是人为的。
会[RegisterDeviceNotification](http://www.google.com/search?btnI=1&q=msdn+RegisterDeviceNotification)无效吗? –
@Dúthomhas我不知道:)会吗?我以前从未使用过WINAPI调用(包括Windows服务)。但它似乎是相关的。非常欢迎您以答案扩展。 –
https://github.com/Brandon-T/HDMI我使用'RegisterDeviceNotification'来检测连接到电视或显示器的HDMI电缆何时插入和拔出。对GUUID稍作修改以检测USB和其他设备。 – Brandon