HUB_DEVICE_CONFIG_INFO structure (usbioctl.h)

The HUB_DEVICE_CONFIG_INFO structure is used in conjunction with the kernel-mode IOCTL, IOCTL_INTERNAL_USB_GET_DEVICE_CONFIG_INFO to request to report information about a USB device and the hub to which the device is attached.

Syntax

typedef struct _HUB_DEVICE_CONFIG_INFO_V1 {
  ULONG                       Version;
  ULONG                       Length;
  USB_HUB_CAP_FLAGS           HubFlags;
  USB_ID_STRING               HardwareIds;
  USB_ID_STRING               CompatibleIds;
  USB_ID_STRING               DeviceDescription;
  ULONG                       Reserved[19];
  USB_HUB_DEVICE_UXD_SETTINGS UxdSettings;
} HUB_DEVICE_CONFIG_INFO, *PHUB_DEVICE_CONFIG_INFO;

Members

Version

Specifies the version number. Must be set to 1.

Length

Specifies the size of the HUB_DEVICE_CONFIG_INFO structure. Must be set by the caller.

HubFlags

Specifies the hub capabilities in a USB_HUB_CAP_FLAGS structure.

HardwareIds

The PnP hardware ID multi-string for the USB device in a USB_ID_STRING structure.

CompatibleIds

PnP compatible ID multi-string for the USB device in a USB_ID_STRING structure.

DeviceDescription

Description of the device in a USB_ID_STRING structure. This may be set to NULL.

Reserved[19]

Reserved.

UxdSettings

Remarks

The Buffer member of the USB_ID_STRING structure points to a string that contains HardwareIds, CompatibleIds, and DeviceDescription values. The caller is responsible for releasing this string buffer, which is allocated by the hub driver.

Requirements

Requirement Value
Minimum supported client Available in Windows XP and later operating systems.
Header usbioctl.h (include Usbioctl.h)

See also

IOCTL_INTERNAL_USB_GET_DEVICE_CONFIG_INFO

USB Structures

USB_HUB_CAP_FLAGS

USB_ID_STRING