Over a decade of making NDIS developers dangerous

Today we released a new version of the WDK.  This release has an updated version of the debuggers, including an overhauled version of ndiskd.

Ndiskd is a debugger extension written by the NDIS team.  Internally, we use the extension to debug NDIS.SYS itself.  Since it’s also useful for debugging problems in third-party network drivers, we ship the extension along with the debugger package.

Unfortunately, the Windows 7 RTM release of the WDK contained an ndiskd that didn't work with public symbols.  We know that was painful for you, and we’re happy to announce that the overhauled version works again.

The overhaul fixes a few major bugs and introduces a handful of new features.  The most important bugfix, obviously, is that it works with public symbols again.  Aside from that, you will notice that its output is cleaned up and hopefully includes more relevant information.  Hyperlinks have been sprinkled across the interface, so you don’t have to remember as many commands (you’ll understand when you see it!).  A number of bugs have been fixed when targeting a non-English, 64-bit, or older version of Windows.  Finally, we added a built-in help system, so you no longer need to guess what NDIS’s cryptic abbreviations mean.

Those of you who are NDIS veterans will be relieved to learn that despite the overhaul, we didn’t change any of the input syntax; your muscle memory can still punch in !gminiports, !mopen, and all the other classic ndiskd commands.  And those of you who are new to debugging network issues also have something to look forward to: this week we will start an introductory series on using ndiskd.

So if you are debugging network drivers, go grab the new WDK and try out !ndiskd.  We really hope it’ll be useful to you.  Oh, and don’t forget to leave us a note in the comments with your feedback on the new version.