共用方式為


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

由IRP_MN_QUERY_INTERFACE要求傳回之USB_BUS_INTERFACE_USBDI_V0結構的 BusContext 成員中傳回的句柄。

[out, optional] unnamedParam2

指定輸出數據的長度。

[in, out] unnamedParam3

接收所要求總線信息的緩衝區指標。

[out] unnamedParam4

在輸入時, BusInformationBuffer 所指定的緩衝區長度。 輸出時,輸出數據的長度。

[in] unnamedParam5

指定要傳回的信息層級。 如果 Level 為 0,函式會傳回總頻寬和每秒位的總耗用頻寬。 如果 Level 為 1,則函式會傳回 Unicode 中控制器的符號名稱,除了總頻寬和耗用的頻寬總計之外。

傳回值

QueryBusInformation 會傳回下列其中一個值:

傳回碼 Description
STATUS_SUCCESS 呼叫已順利完成。
STATUS_BUFFER_TOO_SMALL 緩衝區太小。 此錯誤碼會在兩種情況下傳回:

每當 Level == 0 時,如果 BusInformationBuffer 所指向的緩衝區大小小於 USB_BUS_INFORMATION_LEVEL_0 結構的大小,就會傳回此錯誤碼。

每當 Level == 1 時,如果 BusInformationBuffer 指向的緩衝區大小小於 USB_BUS_INFORMATION_LEVEL_1 結構的大小,就會傳回此錯誤碼。

備註

這個例程傳回的確切信息取決於 Level 參數的值。 此例程會取代 usbd.sys 所提供的USBD_QueryBusInformation 連結庫函式。

規格需求

需求
目標平台 桌面
標頭 usbbusif.h (包含 Usbbusif.h)
IRQL < = DISPATCH_LEVEL

另請參閱