HOWTO: Writing WDM/NDIS Miniports for Windows

ID: Q224784


The information in this article applies to:


SUMMARY

Cutting-edge network devices use such new hardware interfaces as USB and 1394 to connect to the PC. These new hardware interfaces require Windows Driver Model (WDM) miniport drivers to support them. However, Windows 2000 and Windows 98 provide specialized interfaces and support for network drivers. An NDIS miniport is required. Therefore, such a network device requires an NDIS miniport driver in which the upper-edge provides an NDIS miniport interface and the lower-edge provides a WDM miniport interface.


MORE INFORMATION

An NDIS miniport driver that supports a WDM-class device is regarded by NDIS as a layered driver because it does not use the NDIS wrapper to access the hardware. Instead, such an NDIS miniport driver adheres to the requirements of the appropriate WDM bus driver interface. With regard to the NDIS specification, the driver must:

NDIS is the Device Loader, Class Driver, Plug and Play Manager, WMI Manager, and Power Manager for a miniport. If, for example, a developer is writing a miniport for a USB device, the developer should use the USB Bulk sample to base his or her USB client code. However do NOT install IRP handlers as in the USB BULK sample. NDIS installs IRP handlers and determines the appropriate course of action. Then NDIS uses the miniport's RequestHandler to send update requests to the miniport, and uses the callback functions in the miniport's NDIS_MINIPORT_CHARACTERISTICS:

Additional query words: NdisMRegisterMiniport WDM NdisSetAttributesEx halthandler


Keywords          : kbDDK kbKMode kbNDIS kbWinOS2000 kbWinOS98 kbDSupport 
Version           : Win98:; winnt:
Platform          : winnt Win98 
Issue type        : kbhowto 

Last Reviewed: July 8, 1999