Contact Us Archives Subscribe Downloads Resources
Vol. 1 No. 2 The Independent Newsletter of Windows Driver Programming May 1, 2003

News Briefs Features Departments
New Windows Driver Framework

April 4, 2003. Microsoft has announced online "Ask the Experts" sessions concerning the Windows Driver Framework, to be held at http://msdn.microsoft.com/chats on May 28 from 7-8 PM PDT and again on June 2 from 10-11 AM PDT.

So, what is this Windows Driver Framework, inquiring minds would like to know? We're not allowed to say anything more until after the commencement of the WinHEC conference on May 6 in New Orleans.  That should be a pretty broad hint that WinHEC will contain plenty of information about this new way of writing drivers for Windows systems, maybe in some of those sessions with "Longhorn Driver Kit" in the title. Come back to WD-3 on May 6 for breaking details. And, if you haven't signed up for the conference yet, visit http://www.microsoft.com/winhec and do it now!

 
WD-3 Bookmarks Still Available

May 9, 2003. WinHEC 2003 is now a fond memory. If you didn't go, or if you didn't manage to get one of the WD-3 bookmarks at the show, a limited number of these finely crafted heirlooms are still available. Simply send a SASE (that's Self-Addressed Stamped Envelope for those of you born after the Age of Snail Mail) to the Editor in Chief, whose address can be found at the web site listed in the Contact Us page. Remember: these bookmarks are lighter and less breakable than coffee mugs, and they won't deprive your hair of badly needed moisture when worn in the rain! Plus there may never be any more of them after this supply runs out.

 

WD-3 Subscription Service Available

In response to reader requests, we've created a subscription service. In keeping with our NONCOMMERCIAL orientation, all we ask for is your e-mail address, and all we'll ever send you are messages telling you when we post new issues. Naturally, you can opt out at any time.

All of our content is free and available to all, whether or not you're a subscriber.

Click here to reach the signup page.

Introducing Windows Driver Framework
by Walter Oney

Driver programming has gotten to be wicked hard, even for experts. At WinHEC 2003, Microsoft has announced a new model for driver programming -- Windows Driver Framework. Although WDF is still under development, there's much to say about it. This article explains the basic concepts and shows a "Hello, World!" driver that contains calls to just three Device Driver Interface routines and yet actually installs, uninstalls, and withstands power transitions.

Read the whole article

IEEE 1394 Address Range Allocation
by Bill McKenzie

One of the obstacles to getting devices to market for the high-speed 1394 bus is lack of tutorial documentation about the drivers you need to write. In this first part of a series of articles, Bill explains how a driver can allocate an address range -- one of those sticky bits that you need to get right at the beginning before you can make real progress with a driver.

Read the whole article

Don't String Me Along
by Gary Little

We could have called this article "Null-terminated strings considered harmful" because using null-terminated strings in the kernel can be hazardous. Functions like strcpy can clobber a buffer. Functions like strlen can walk off the end of valid memory looking for a null terminator. The venerable strncpy can leave you with a string that you thought would be null terminated but really isn't. In this article, Gary explores NTSTRSAFE.H, a collection of "safe" string functions recently added to the DDK. Read this article before a mistaken assumption about string data leaves you with egg on your face...

Read the whole article

INF Files for Bears of Little Brain
by Brian Catlin

INF files baffle most driver developers, never mind cartoon animals in the forest. In this article, Brian leads you through the basics of these fearsome creatures. After reading this article, if someone tells you that INF files are too hard for normal mortals, you can reply, "Pooh!"

Read the whole article

In the next issue . . .

Mark Roddy explains the new rules for accessing port or memory registers on a PCI card. Your driver probably needs to be revised in light of this new information.

Bill McKenzie continues his series on 1394 driver programming.

Thomas Divine starts a new series on the PASSTHRU sample in the DDK.

Stephan Wolf explains how to use the NDIS Test Tool.

And much more!

Gotcha! Every issue, we tell you about things that will bite the unwary developer. For example:
Driver Model All
Title Reading Optional Values with RtlQueryRegistryValues
Annoyance HIGH
Description When calling RtlQueryRegistryValues, a table is passed describing the keys to read from the registry. If any of the keys in the table are optional (meaning that they might not be in the registry) and there is no default value specified, then RtlQueryRegistryValues will cause a system crash unless the DefaultType field for that key in the table is set to REG_NONE.
Workaround Set the DefaultType field to REG_NONE or specify a default value
Versions NT, Win2K, WinXP, WS2003

Read more Gotcha! notes

Letters Letters from our readers
The Architect Each issue, we present architectural ideas for a complex driver.

In this issue, Walter Oney describes the basics of an upper filter driver that will monitor changes in RS-232 signal lines on behalf of an application that is not the "regular" user of a COM port.

Windows is a registered trademark of Microsoft Corporation. Windows Driver Developer's Digest, WD-3, WD3, the WD logo and "The Independent Newsletter of Windows Driver Programming" are service marks of the WD-3 Editorial Board. Other trademarks used at this site are the property of their respective owners.

The advice provided here is offered "as is", with no warranty of any kind and with no assurance that practicing the same will not infringe a patent or other intellectual property right belonging to a third person.

Outtakes from the "Name that newsletter contest" before we settled on Windows Driver Developer's Digest: Geeks Gone Wild, The NT Outsider, Divine Secrets of the Blue Screen Brotherhood.