Виртуальные драйверы с Windows Driver Model - с чего начать?

Я никогда раньше не писал драйверов, но я начинаю проект с открытым исходным кодом, который включает в себя создание виртуальных портов MIDI, которые будут отправлять данные MIDI по сети.

Для этого я предполагаю, что буду создавать какой-то виртуальный драйвер с использованием WDM (если это невозможно с помощью хуков ядра?), Но, будучи новичком в разработке драйверов, я не знаю, с чего начать.

Кто-нибудь знает какие-нибудь полезные ресурсы, которые помогут мне в этом проекте? Или какой-нибудь открытый исходный код из аналогичного проекта, который я мог бы использовать в качестве отправной точки?

4 ответа

Решение

Драйверы Windows MIDI не нужно реализовывать в ядре, они могут быть полностью реализованы в пользовательском пространстве в виде DLL.

В MSDN есть некоторая информация о функциях, которые вам нужно реализовать - сообщения об аудиоустройствах для MIDI - к сожалению, этого не хватает

Раньше был пример кода для этого типа драйвера, как часть NT4 DDK, но, к сожалению, в более поздних выпусках DDK / WDK его больше нет.

Некоторую лучшую (хотя и более старую) документацию и пример кода можно найти после некоторого поиска:

Посмотрите на проект Dokan, он делает нечто подобное (но с виртуальным драйвером файловой системы).

Если вы хотите создать новую файловую систему в Windows, например, для улучшения FAT или NTFS, вам необходимо разработать драйвер файловой системы.

Разработка драйвера устройства, работающего в режиме ядра на Windows, чрезвычайно сложна. Используя библиотеку Dokan, вы можете очень легко создавать свои собственные файловые системы без написания драйвера устройства.

Библиотека Dokan похожа на FUSE(файловая система в режиме пользователя Linux), но работает в Windows.

Вот хорошая подборка ресурсов по разработке драйверов под WDM

Гугл тиамодиск... отличный пример. виртуального драйвера мини-порта SCSI. другой виртуальный драйвер, который я знаю, это "Filedisk". если ты хочешь tiamodisk я могу написать по электронной почте

Другие вопросы по тегам