Driver Stacks for USB Keyboard, Mouse, and Joystick Devices
The following figure illustrates the system-supplied driver stacks for USB keyboard, mouse, and joystick devices.
As shown in the figure, the USB-related HIDClass components are combined with the non-HIDClass components for keyboard, mouse, and joystick devices, and other user-mode system components.
For information about supporting joystick devices for Windows 2000 and later versions, see Driver Stacks for HIDClass Game Port Devices.
Vendor drivers are not required for USB keyboard, mouse, and joystick devices.
The system opens all keyboard and mouse collections for its exclusive use.
Joystick devices are shared devices that can be opened from user mode. A user-mode application can indirectly access a joystick through Microsoft DirectInput. A user-mode application can also directly access a joystick by using the HIDClass support routines. The application calls CreateFile (described in the Microsoft Windows SDK) to obtain a file handle to a joystick collection and uses the HIDClass support routines to communicate with the collection.
For information about the individual components of the input architecture, see the following:
For information about device stacks for USB HID devices and operating HIDClass devices, see HIDClass Devices.
Build date: 4/28/2012