我正在编写一个应该检查驱动程序设备ID的C ++程序。
我的输入是应该出现在设备管理器中的驱动程序名称。
我试过谷歌,我认为:
我可以使用此示例代码http://msdn.microsoft.com/en-us/library/ms682619%28VS.85%29.aspx
我应该使用IRP_MN_QUERY_ID函数来获取设备ID- http://msdn.microsoft.com/en-us/library/windows/hardware/ff551679(v=vs.85).aspx。
但是,我找不到任何关于如何实际操作的示例或代码片段,以及这两个函数如何连接?
我没有驱动程序的经验,示例代码将非常感激......
答案 0 :(得分:-1)
在Windows上没有设备ID(名称=))。设备匹配硬件ID和兼容ID。从这个id系统生成实例id - 唯一地标识总线上特定端口上的设备。通过使用IoGetDeviceProperty函数(http://msdn.microsoft.com/en-us/library/windows/hardware/ff549203(v=vs.85).aspx),您可以在不发送IRP的情况下获得硬件/兼容ID,这比卷起您自己的IRP更容易。