4

我以前从未编写过驱动程序,但我正在启动一个开源项目,该项目涉及创建将通过网络发送 MIDI 数据的虚拟 MIDI 端口。

为此,我假设我将使用 WDM 创建某种虚拟驱动程序(除非可以使用内核挂钩?) - 但作为驱动程序开发的初学者,我不知道从哪里开始。

有谁知道任何有用的资源可以帮助我完成这个项目?或者我可以从类似项目中提取一些开源代码作为起点?

4

4 回答 4

4

Windows MIDI 驱动程序不需要在内核中实现,它们可以完全在用户空间中作为 DLL 实现。

MSDN 有一些关于您需要实现的功能的信息 - MIDI 的音频设备消息- 不幸的是它有些缺乏。

曾经有这种驱动程序的示例代码,作为 NT4 DDK 的一部分,但不幸的是,最新版本的 DDK / WDK 不再包含它。

经过一番搜索,仍然可以找到一些更好(虽然较旧)的文档和示例代码:

于 2010-12-22T22:49:49.280 回答
2

查看Dokan项目,它正在做类似的事情(但使用文件系统虚拟驱动程序)。

当您想在 Windows 上创建新的文件系统时,例如改进 FAT 或 NTFS,您需要开发文件系统驱动程序。

在windows上开发一个在内核模式下工作的设备驱动程序是非常困难的。通过使用Dokan库,您可以非常容易地创建自己的文件系统,而无需编写设备驱动程序。

Dokan 库类似于 FUSE(Linux 用户模式文件系统),但适用于 Windows。

于 2010-07-14T18:57:31.373 回答
1

是WDM下驱动开发的好资源汇编

于 2010-07-16T07:20:11.527 回答
-1

google tiamodisk...一个很好的例子。的虚拟 SCSI 微型端口驱动程序。我知道的另一个虚拟驱动程序是“Filedisk”。如果你想要 tiamodisk 我可以发电子邮件

于 2010-08-03T13:39:47.637 回答