THE STREAM INTERFACE FUNCTIONS

Previous versions of Windows Embedded CE had 12 stream interface functions. Compact 7 has 13 (see Table 33-2) with the addition of Cancel for canceling asynchronous I/O. These functions implement functionality related to:

  • Loading/unloading the driver
  • Application I/O
  • Power management

TABLE 33-2: The Stream Driver Functions

LOADING/UNLOADING APPLICATION I/O POWER MANAGEMENT
DllEntryPoint or DllMain XXX_Open XXX_PowerDown
XXX_Init XXX_Read XXX_PowerUp
XXX_PreDeinit XXX_Write
XXX_Deinit XXX_Seek
XXX_IOControl
XXX_PreClose
XXX_Close
XXX_Cancel

In Chapter 32, “Stream Interface Drivers,” these functions are discussed in detail. A summary of their functionality follows:

They are called by Device Manager, not directly by an application. There is an application programming interface (API) for calling the functions via Device Manager. When implemented, the XXX in the function names is replaced by the stream prefix. The functions each have a specific parameter list and generally return a value to the operating system that indicates success or otherwise of the operation. Not all functions have to be implemented. The functions when coded are compiled into a driver DLL that is loaded according to its registry settings.

A Minimal Stream Driver

Two stream functions, apart from the DLL entry point, are required to build and load a stream driver. They are Init and Deinit. A driver that has only those parts of the stream can load but ...

Get Professional Windows® Embedded Compact 7 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.