If you thought that big changes in the Windows driver arena were complete with the release of the Windows 8 WDK (which for the first time includes integration with Visual Studio)… you’d be WRONG. The WDK Team continues to surprise and amaze us by making our most profound wishes true. The latest news, announced at […]
WdfRequestSend: Are There REALLY Three Useful Variants?
When you learn about WdfRequestSend, you typically learn that there are three different ways that you can send a Request to an I/O Target: Sending a Request synchronously,; Sending a Request asynchronously, and telling the framework to thereafter disregard it. This is called “Send and Forget” processing. In this case, your driver does not receive a […]
Understanding WDFMEMORY Objects
There are three ways of describing allocated memory in WDF: Buffers, WDF Memory Objects, and MDLs. A memory buffer in WDF is just want it is in any system: A pointer and a length. You get a “buffer” directly when you call functions such as WdfRequestRetrieveInputBuffer (or friends) or when you use one of the […]
Test Signing Made Simple
Like so many things to do with writing drivers for Windows, test signing drivers used to suck. A lot. But with the advent of the Win8 WDK, not only is it not so bad… it’s pretty easy. When you build your driver and Driver Package in the Win8 WDK, by default it signs your driver and package […]