функция обратного вызова PUSB_BUSIFFN_QUERY_BUS_INFORMATION (usbbusif.h)

Подпрограмма QueryBusInformation получает сведения о шине.

Синтаксис

typedef NTSTATUS
  (USB_BUSIFFN *PUSB_BUSIFFN_QUERY_BUS_INFORMATION) (
    IN PVOID,
    IN ULONG,
    IN OUT PVOID,
    IN OUT PULONG,
    OUT PULONG
  );

Параметры

[in] unnamedParam1

Дескриптор, возвращенный в busContext член структуры USB_BUS_INTERFACE_USBDI_V0 запросом IRP_MN_QUERY_INTERFACE.

[out, optional] unnamedParam2

Указывает длину выходных данных.

[in, out] unnamedParam3

Указатель на буфер, который получает запрошенные сведения о шине.

[out] unnamedParam4

Длина буфера, заданного BusInformationBuffer. В выходных данных длина выходных данных.

[in] unnamedParam5

Указывает уровень возвращаемой информации. Если уровень равен 0, функция возвращает общую пропускную способность и общую потребляемую пропускную способность в битах в секунду. Если уровень равен 1, функция возвращает символическое имя контроллера в Юникоде в дополнение к общей пропускной способности и общей потребляемой пропускной способности.

Возвращаемое значение

QueryBusInformation возвращает одно из следующих значений:

Возвращаемый код Описание
STATUS_SUCCESS Вызов завершился успешно.
STATUS_BUFFER_TOO_SMALL Буфер был слишком мал. Этот код ошибки возвращается в двух случаях:

При каждом уровне == 0 этот код ошибки возвращается, если размер буфера, на который указывает BusInformationBuffer меньше размера структуры USB_BUS_INFORMATION_LEVEL_0.

При каждом уровне == 1 этот код ошибки возвращается, если размер буфера, на который указывает BusInformationBuffer меньше размера структуры USB_BUS_INFORMATION_LEVEL_1.

Замечания

Точные сведения, возвращаемые этой подпрограммой, зависят от значения параметра уровня. Эта подпрограмма заменяет функцию библиотеки USBD_QueryBusInformation, предоставляемую usbd.sys.

Требования

Требование Ценность
целевая платформа Настольный
заголовка usbbusif.h (include Usbbusif.h)
IRQL < = DISPATCH_LEVEL

См. также