我想创建一个虚拟 HID 设备(用驱动程序模拟它)。
它必须对实施标准 HID 检测的客户端可见:
- 调用 HidD_GetHidGuid() – 获取 HID 设备类 GUID
- 调用 SetupDiGetClassDevs() – 获取一组实现 HID 接口的设备的句柄
- 调用 SetupDiEnumDeviceInterfaces() – 对于返回的设备集中的每个设备,获取所有公开的 HID 接口的接口信息。
- 调用 SetupDiGetDeviceInterfaceDetail() – 对于在上一次调用中获得的每个接口,获取该接口的详细信息块。此详细信息包括可以传递给 CreateFile() 以打开设备句柄的字符串
- 调用 SetupDiDestroyDeviceInfoList() – 释放在调用 SetupDiGetClassDevs() 中获得的设备信息集。
该设备还应该支持读取,因此 CreateFile / ReadFile 将返回我从驱动程序提供的数据。
我真的不知道从哪里开始,因为我没有很多经验。在内核开发中。:(