共用方式為


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要求傳回之 BusContextUSB_BUS_INTERFACE_USBDI_V0 結構成員中的 Handle。

[out, optional] unnamedParam2

指定輸出數據的長度。

[in, out] unnamedParam3

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

[out] unnamedParam4

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

[in] unnamedParam5

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

傳回值

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

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

每當 層級 == 0 時,如果 BusInformationBuff er 所指向的緩衝區大小小於 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

另請參閱