Installable device drivers for Windows CE are dynamically linked libraries (DLLs). You create them in very much the same way as you create a DLL for Microsoft Windows 95 or Microsoft Windows NT.
The primary job of an installable device driver is to expose the services of a peripheral device to applications. This is done in a similar manner to other operating systems, by presenting the device as a special file in the filesystem. Therefore, all installable device driver DLLs expose the same entry points. Those entry points correspond to the standard Win32 file I/O functions, such as OpenFile, ReadFile, DeviceIOControl, and others. In addition, Windows CE requires some additional entry points to related to maintaining a device's state while the Windows CE platform is turned off.