我有一款使用ANT USB dongle与自行车训练器通信的“现成”商业软件。
由于协议略有不同(并非很多),我的训练器与该软件不兼容。
我的目标是编写一个协议转换器。我唯一能想到的是编写一个UMDF虚拟设备驱动程序(类似于Magic ISO Virtual DVD),在设备管理器中看起来像一个ANT USB设备(相同的PID \ VID),同时连接到物理ANT设备。虚拟设备驱动程序将执行协议转换。
我查看了Microsoft的几个示例https://github.com/Microsoft/Windows-driver-samples,但未找到任何相关内容。我认为这个示例会是一个好的起点https://github.com/Microsoft/Windows-driver-samples-master/Sensors/CustomSensors,但使用inf文件中给定的过程无法加载驱动程序。
由于协议略有不同(并非很多),我的训练器与该软件不兼容。
我的目标是编写一个协议转换器。我唯一能想到的是编写一个UMDF虚拟设备驱动程序(类似于Magic ISO Virtual DVD),在设备管理器中看起来像一个ANT USB设备(相同的PID \ VID),同时连接到物理ANT设备。虚拟设备驱动程序将执行协议转换。
我查看了Microsoft的几个示例https://github.com/Microsoft/Windows-driver-samples,但未找到任何相关内容。我认为这个示例会是一个好的起点https://github.com/Microsoft/Windows-driver-samples-master/Sensors/CustomSensors,但使用inf文件中给定的过程无法加载驱动程序。
顺便说一句,我熟悉INF文件的内容以及KMDF和UMDF设备驱动程序编程的基础知识。我的问题是编写一个可以在设备管理器中加载并呈现自己为真实USB设备的东西,即使它没有被USB总线子系统枚举。
有没有具有驱动程序开发经验的人可以指向一些相关的代码示例或文档?
最好的问候!