I/O Control Codes (Windows Embedded CE 6.0)
Many types of stream interface device drivers use I/O control codes to implement parts of their functionality. I/O control codes are a generic method for extending the functionality of the stream interface beyond the point defined by the standard stream interface functions. Stream interface drivers can define arbitrary I/O control codes for whatever purposes the drivers require. There are predefined I/O control codes for some particular types of stream interface drivers, such as block device drivers, serial port drivers, and universal serial bus (USB) human interface device (HID) class devices. If you define additional I/O control codes for your stream interface driver, you are responsible for publishing the information about those codes so application writers can make full use of your device driver.
These I/O control codes are passed as the dwCode parameter of the XXX_IOControl (Device Manager) function by an application or an operating system (OS) component. The XXX_IOControl function's other parameters supply data necessary for each particular I/O control code; the meanings of the other parameters are different for every I/O control code.