我之前从未编写过驱动程序,但我正在启动一个开源项目,涉及创建将通过网络发送MIDI数据的虚拟MIDI端口。
为此,我假设我将使用WDM创建某种虚拟驱动程序(除非可以使用内核挂钩?) - 但作为驱动程序开发的初学者,我不知道从哪里开始。
有没有人知道任何有用的资源可以帮助我完成这个项目?或者来自类似项目的一些开源代码,我可以将其作为起点?
答案 0 :(得分:4)
Windows MIDI驱动程序不需要在内核中实现,它们可以完全在用户空间中作为DLL实现。
MSDN提供了有关您需要实现的功能的一些信息 - Audio Device Messages for MIDI - 不幸的是,它有点缺乏。
以前有这种驱动程序的示例代码,作为NT4 DDK的一部分,但遗憾的是,DDK / WDK的更新版本不再包含它了。
在搜索之后仍然可以找到一些更好的(虽然更旧)文档和示例代码:
答案 1 :(得分:2)
查看Dokan项目,它正在做类似的事情(但使用文件系统虚拟驱动程序)。
如果要创建新文件 Windows上的系统,例如 你需要改进FAT或NTFS 开发文件系统驱动程序。
开发有效的设备驱动程序 在Windows上的内核模式是非常的 很困难。通过使用Dokan库,你 可以创建自己的文件系统 很容易,无需编写设备驱动程序。
Dokan Library类似于FUSE(Linux 用户模式文件系统)但工作 视窗。
答案 2 :(得分:1)
Here是WDM下驱动程序开发的良好资源编译
答案 3 :(得分:-1)