This section lists the system-supplied device setup classes. In the definition for each class, the Class and ClassGuid entries correspond to the values that must be specified in the INF Version Section of a device's INF file. The GUIDs for system-supplied device setup classes are defined in devguid.h.
Supplying the appropriate class GUID value in the INF for a device, rather than or in addition to the Class=class-name entry, significantly improves the performance of system INF searching. In fact, system INFs that do not require either entry, such as those that neither install a new device class installer nor a device driver, sometimes supply ClassGuid={00000000-0000-0000-0000-000000000000} in their Version sections to cut down on the system's INF searching time.
Following are two lists of system-defined device setup classes:
System-defined device setup classes available to vendors
System-defined device setup classes reserved for system use
For Microsoft® Windows® 2000 and later NT-based operating systems, this class includes battery devices and UPS devices.
For Windows 9x/Me, the System class includes battery devices and UPS devices.
For Windows Server 2003 and later versions, this class includes all biometric-based personal identification devices.
For Windows XP SP1 and later, this class includes all Bluetooth devices.
This class includes CD-ROM drives, including SCSI CD-ROM drives. By default, the system's CD-ROM class installer also installs a system-supplied CD audio driver and CD-ROM changer driver as Plug and Play filters.
This class includes hard disk drives. See also the HDC and SCSIAdapter classes.
This class includes video adapters. Drivers for this class include display drivers and video miniport drivers.
This class includes floppy disk drive controllers.
This class includes floppy disk drives.
This class includes hard disk controllers, including ATA/ATAPI controllers but not SCSI and RAID disk controllers.
This class includes interactive input devices that are operated by the system-supplied HID class driver, which includes USB devices that comply with the USB HID Standard and non-USB devices that use a HID minidriver. For more information, see HIDClass Device Setup Class.. (See also the Keyboard or Mouse classes later in this list.)
This class includes devices that control the operation of multifunction IEEE 1284.4 peripheral devices.
This class includes Dot4 print functions. A Dot4 print function is a function on a Dot4 device and has a single child device, which is a member of the Printer device setup class.
This class includes IEEE 1394 devices that support the IEC-61883 protocol device class.
The 61883 component includes the 61883.sys protocol driver that transmits various audio and video data streams over the 1394 bus. These currently include standard/high/low quality DV, MPEG2, DSS, and Audio. These data streams are defined by the IEC-61883 specifications.
This class includes IEEE 1394 devices that support the AVC protocol device class.
This class includes IEEE 1394 devices that support the SBP2 protocol device class.
This class includes 1394 host controllers connected on a PCI bus, but not 1394 peripherals. Drivers for this class are system-supplied.
This class includes still-image capture devices, digital cameras, and scanners.
This class includes infrared devices. Drivers for this class include Serial-IR and Fast-IR NDIS miniports, but see also the Network Adapter class for other NDIS NIC miniports.
This class includes all keyboards. That is, it also must be specified in the (secondary) INF for an enumerated child HID keyboard device.
This class includes SCSI media changer devices.
This class includes memory devices, such as flash memory cards.
This class includes modems. An INF for a device of this class installs no device driver(s), but rather specifies the features and configuration information of a particular modem and stores this information in the registry. See also the Multifunction class.
This class includes display monitors. An INF for a device of this class installs no device driver(s), but rather specifies the features of a particular monitor to be stored in the registry for use by drivers of video adapters. (Monitors are enumerated as the child devices of display adapters.)
This class includes all mouse devices and other kinds of pointing devices, such as trackballs. That is, this class also must be specified in the (secondary) INF for an enumerated child HID mouse device.
This class includes combo cards, such as a PCMCIA modem and netcard adapter. The driver for such a Plug and Play multifunction device is installed under this class and enumerates the modem and netcard separately as its child devices.
This class includes Audio and DVD multimedia devices, joystick ports, and full-motion video capture devices.
This class includes intelligent multiport serial cards, but not peripheral devices that connect to its ports. It does not include unintelligent (16550-type) mutiport serial controllers or single-port serial controllers (see the Ports class).
This class includes NDIS NIC miniport drivers excluding Fast-IR miniport drivers, NDIS intermediate drivers (of virtual adapters), and CoNDIS MCM miniport drivers.
This class includes network and/or print providers.
This class includes network services, such as redirectors and servers.
This class includes NDIS protocols, CoNDIS stand-alone call managers, and CoNDIS clients, as well as higher level drivers in transport stacks.
This class includes devices that accelerate secure socket layer (SSL) cryptographic processing.
This class includes PCMCIA and CardBus host controllers, but not PCMCIA or CardBus peripherals. Drivers for this class are system-supplied.
This class includes serial and parallel port devices. See also the MultiportSerial class.
This class includes printers.
This class includes SCSI/1394-enumerated printers. Drivers for this class provide printer communication for a specific bus.
This class includes processor types.
This class includes SCSI HBAs (Host Bus Adapters) and disk-array controllers.
This class includes smart card readers.
This class includes storage volumes as defined by the system-supplied logical volume manager and class drivers that create device objects to represent storage volumes, such as the system disk class driver.
This class includes HALs, system buses, system bridges, the system ACPI driver, and the system volume manager driver.
For Windows 9x/Me, this class also includes battery devices and UPS devices.
This class includes tape drives, including all tape miniclass drivers.
This class includes USB host controllers and USB hubs, but not USB peripherals. Drivers for this class are system-supplied.
This class includes Windows CE ActiveSync devices.
The WCEUSBS setup class supports communication between a personal computer and a device that is compatible with the Windows CE ActiveSync driver (generally, PocketPC devices) over USB.
The following classes and GUIDs should not be used to install devices (or drivers) on Windows 2000 or later platforms:
This class is obsolete.
This class is reserved for system use.
This class is reserved for system use.
This class is reserved for future use.
This class is reserved for future use.
This class is reserved for system use.
This class is reserved for system use.
This class is obsolete.
This class is reserved for system use.
This class is reserved for system use. Enumerated devices for which the system cannot determine the type are installed under this class. Do not use this class if you are unsure in which class your device belongs. Either determine the correct device setup class or create a new class.
This class is reserved for system use.
This class is obsolete.
This class is reserved for system use.