My travels with WDF

The continuing story of a boy, his dog and their discovery of the world outside...of WDM.

Browse by Tags

Tagged Content List
  • Blog Post: Where have you been?!

    Well, as you could probably guess, I haven't had much to say for a while for a couple of reasons - first and foremost, the Windows 8 product cycle was really intense. A lot of changes under the hood came down the pipe, so with the big additions to WDF (UMDF especially) we really had a ton of work to...
  • Blog Post: You’ve had the time, let’s hear the feedback.

    I hope those of you who are using the new Visual Studio 2011 with the WDK integration are having some fun, even if it’s just been wandering around and playing.  What, if anything, are you not liking about it?  Anything that’s unintuitive or confusing?  What do you like about it, but would...
  • Blog Post: Well, you can kind of see why we’ve been quiet around here…

    If you’re watching what’s going on at //BUILD (and why wouldn’t you be?), you may have seen that UMDF now supports hardware access (via ports and registers) and interrupt handling! If you haven’t seen it, you can go read more here . And the other big one. Something I’ve...
  • Blog Post: How active are you?

    Was pondering a few questions the last few days. How many of you UMDF writers use ATL in your drivers? If you do, do you have more of a kernel driver background or a user mode background? Since UMDF works on an object model very similar to COM, the ATL does provide a lot of useful object lifetime management...
  • Blog Post: Time keeps on slippin’

    Greetings one and all!  Been heads down on some work around here and haven’t been able to post an update in a while. A couple of real good case studies have come up recently with regards to driver stability and effective testing of those drivers.  So I want to call out some processes we’ve...
  • Blog Post: A funny thing happened on the way to the keyboard

    So as I was crafting some UMDF HID driver code for your consumption, and I was working with one of you (and you know who you are *g*) during some of that time frame, we sort of discovered everything already exists between my earlier blog posts and some of the WDK samples.  So rather than reinvent...
  • Blog Post: 0 and 1 are not just numbers, they’re spaces!

    Again, thanks to our intrepid explorer Ilia S. for helping uncover some more traps in the UMDF HID Collection Filter journey. Two things to keep in mind as you’re creating your driver: 1. UMDF drivers are hosted in a Session 0 based executable on Vista and above - - and - 2. A lot of Win32 APIs for controlling...
  • Blog Post: How to avoid getting a HID to the head (a guide to making a UMDF - HID collection filter)

    First of all, HUGE thanks to Ilia S. for helping to track down this little trap. I’m glad we finally got your driver up and running! Nothing like having an 8 hour time difference to slow things down. :) For those of you who like the 30 second version; If you need to use Impersonation in a UMDF...
  • Blog Post: It’s time to party!

    Fresh from the oven, Windows Driver Kit (WDK) 7.1.0 is ready for your consumption! You can get it from the Download Center; http://www.microsoft.com/downloads/en/results.aspx?freetext=WDK&displaylang=en&stype=s_basic Or off Microsoft Connect (remember, you have to be signed in to your connect...
  • Blog Post: And here you thought I had a cloaking device

    Got a good one to share with the group; Q: Can I make a kernel mode driver that opens a handle and talks to a UMDF based driver in another device stack? A: Why yes you can! Quite simply done provide you follow all the rules . This is a variant of the UMDF initiated cross stack communication we...
  • Blog Post: I/O Queues and You

    I got an interesting question via mail recently, “Do I really need to create a queue object in my UMDF driver?” Well, this is another one of those, “only if” type questions. For instance - Only if your driver is not handling any I/O from a top edge method which results in the I/O manager being involved...
  • Blog Post: Cross stack communications

    The subject of how to talk to another device stack has come up again, and since I only briefly touched on it a year ago , I thought it would be good provide some code snippets and a little more background on how to accomplish such a feat. The gist of what we are trying to do here is load a UMDF based...
  • Blog Post: House cleaning

    The fourth part of Abhishek’s online UMDF debugging tutorials is up now. :) http://www.microsoft.com/whdc/devtools/debugging/umdftraining.mspx Next up, those of you playing with Windows 7 may have noticed that the “Found New Hardware” wizard is gone!  This in itself is not that big a deal, but it...
  • Blog Post: UMDF Debugging talks online

    Our wondrous Abhishek did a series of Debugging UMDF driver talks and I’m happy to say we now have the first three live on line! In these he covers some of the basics; where to find and how to use WDFVerifier, how to use some of the UMDF Debugger extensions and some basic debugging UMDF scenarios. http...
  • Blog Post: Double filtered for added UMDF flavor.

    UPDATED: 9-March-2010 Astute readers noted that I had the incorrect driver load order when talking about the UmdfServiceOrder directive. :) It IS left to right reading and the LEFT most driver is the lowest driver. In my previous post about Filter Drivers , I mentioned that this time I would focus...
  • Blog Post: Genuine UMDF filtered drivers

    Filter drivers have come up in conversations recently (both internal and external), so I wanted to take some time here to address some of the issues that were brought up with regards to UMDF filter drivers and how to make them. Note: I’m not going to cover all the configuration dynamics available for...
  • Blog Post: Think globally, lock at the smallest scope possible.

    Yes, I know that's a rip off of a ThinkGeek shirt (which I own). Well, this is going to be my second post on this topic (okay, third ), but as it managed to rear its head again recently, what better time to blog.  And I'm going to also blog it simply to prove to Doron that I can provide something...
  • Blog Post: When it leaks, it pours

    Greetings from the Pacific Northwet. After our recent Snow-pocalypse, we also suffered a run of flooding. Amazingly enough, it wasn't directly due to the 13+ inches of snow I had at my house, it was a combination of the snow and the monumental amounts of rain that followed. Quite a few people were literally...
  • Blog Post: How to find the droids you might be looking for

    Most of you at the DDC will notice that I'm not at the DDC. I'm guessing that makes me one of the "juniors" that Bob was referring to. ;) 4.) How do you build debugging techniques into your driver? Ie, DbgBreakPoint, ASSERT, etc - which is best in various situations? This is one of those personal...
  • Blog Post: It's flick, then swish

    So the next part of the little Q&A series on...well, QA; 3.) What security considerations do you take into account when designing and developing a kernel mode driver? Validate user mode pointers and check the buffers to and from user mode. ;) That was a little inside joke for the person...
  • Blog Post: It's all in the wrists

    I got a few interesting questions recently, which was helpful because I was having a tough time finding good material for you guys and gals of late. That's the problem with working on the next Operating System, I can't tell you about all the cool stuff yet. *g* So here's today's question (in two parts...
  • Blog Post: You can have a co-driver, a co-pilot and now, a co-installer

    They're bbbbbbbbaaaaaaaaaaacccccccccckkkkkkkkkkkkkkkkkkk . After some incantations, Ouija boarding and me dancing around a build server with a spindle of DVDs on my head and sacrificing a serial port mouse, the fixed 1.7 coinstallers are available. Sorry for the delay and the initial issue... The...
  • Blog Post: How to jiggle the handle(s) and get your 1.7 to work in Vista

    As people who write drivers are something of a rare breed, I know we probably share a lot of common readers between our Driver blogs and via the OSR boards, but just in case the three or four of you who read my blog haven't seen this, I wanted to make sure it got out there. We had a bit of a stumble...
  • Blog Post: Intellisense-ational!

    After reading Ilias' post about Intellisense lacking for driver projects, I first thought about running upstairs and throwing a few more quarters at him. Then I thought about making a snarky response in his blog post. But in the end, I just decided to show him up; That looks a lot like Intellisense...
  • Blog Post: d'OH-nuts

    As promised here is the correction to the hybrid INF file you'll need to make. [SourceDisksFiles] kmdf1394vdev.sys=1 umdf1394vdev.dll=1 WudfUpdate_01007.dll=1 WdfCoInstaller01005.dll=1 WdfCoInstaller01007.dll=1 .... [CoInstaller_CopyFiles] wdfcoinstaller01007.dll wdfcoinstaller01007.dll WudfUpdate_01007...
Page 1 of 2 (40 items) 12