UMDF Driver Structure

To begin, it is helpful to understand how UMDF drivers use COM. UMDF drivers are implemented as in-process COM objects, sometimes abbreviated to InProc objects or COM servers. In-process objects are packaged in a DLL and run in the context of their host process. A DLL can contain any number of in-process COM objects.

All UMDF DLLs contain at least three required COM servers and typically several optional ones, depending on the requirements of the device. The DLL must also export two standard functions. Figure 18-1 shows the contents of a typical UMDF driver DLL.

Schematic drawing of a UMDF driver DLL

Figure 18-1. Schematic drawing of a UMDF driver DLL

The following ...

Get Developing Drivers with the Windows® Driver Foundation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.