2010-07-04 151 views
3

我從來沒有寫過驅動程序,但我開始了一個開源項目,涉及創建虛擬MIDI端口,它將通過網絡發送MIDI數據。爲此,我認爲我會創建一些使用WDM的虛擬驅動程序(除非它可能與內核掛鉤有關) - 但作爲驅動程序開發的初學者,我不知道從哪裏開始。虛擬驅動程序與Windows驅動程序模型 - 從哪裏開始?

有沒有人知道任何有用的資源,可以幫助我這個項目?或者我可以將一個類似項目的開源代碼作爲起點?

回答

4

Windows MIDI驅動程序不需要在內核中實現,它們可以作爲DLL完全在用戶空間中實現。

MSDN有一些關於你需要實現的功能的信息 - Audio Device Messages for MIDI - 不幸的是它有點缺乏。

曾經有這種驅動程序的示例代碼,作爲NT4 DDK的一部分,但是更近期的DDK/WDK版本遺憾地不再包含它。

一些更好(雖然舊的)文檔和示例代碼仍然可以經過一番搜索發現:

2

查看Dokan項目,它正在做類似的事情(但是使用文件系統虛擬驅動程序)。

當你想在Windows上創建一個新的文件系統 ,例如 提高FAT或NTFS,你需要 開發文件系統驅動。

發展,在內核模式下在Windows上運行 設備驅動程序是極其 difficult.By使用杜坎庫,你可以 非常 輕鬆地創建自己的文件系統,而無需編寫設備驅動程序。

Dokan庫類似於FUSE(Linux 用戶模式文件系統),但在 Windows上工作。

1

Here是驅動程序開發好的資源彙編下WDM

-1

谷歌tiamodisk ......一個優秀的如。的虛擬SCSI微型端口驅動程序。 我知道的另一個虛擬驅動程序是「Filedisk」。 如果你想tiamodisk我可以發郵件