Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

DDK "Hello World"

Tags:

c++

c

wdk

How does one begin writing drivers for Windows? Is there some sort of official DDK "Hello World" example out there?

While I'm sure it will be way above my head at first, eventually I would like to create a simple MIDI driver, much like the Maple Virtual MIDI Cable where the MIDI messages come from a user application rather than a physical device.

(The trouble with using the off-the-shelf MIDI loopback drivers is that the existence of an input and output end is often confusing for the user. My application generates MIDI output that gets sent to the MIDI input of other programs, so if I could create a fake driver that connects to my program rather than hardware, it would eliminate this confusion.)

Thank you for your time.

like image 706
Brad Avatar asked Oct 17 '10 18:10

Brad


2 Answers

The WDK docs are reference material, they won't teach you how to get started. Essential are the sample code included with the WDK, there's lots of it and you can often find something that resembles the kind of driver you want to create. A generic filter driver is available in the src\kmdf\toaster\filter directory, I think that's what you'd need if I understand your goal properly.

Walter Oney's books are essential to learn important concepts, strongly recommended. I keep running into osronline.com as a web site that strongly focuses on driver development, with forums. You typically won't find much help here, it is a rather specialized kind of coding.

like image 175
Hans Passant Avatar answered Sep 21 '22 14:09

Hans Passant


You could take a look at my virtualMIDI-driver:

www.tobias-erichsen.de/virtualMIDI.html

This one does exactly what your are looking for.

Tobias

like image 31
Tobias Erichsen Avatar answered Sep 20 '22 14:09

Tobias Erichsen