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 の場合、関数は合計帯域幅と合計消費帯域幅を 1 秒あたりのビット数で返します。 Level が 1 の場合、関数は、合計帯域幅と合計消費帯域幅に加えて、Unicode でコントローラーのシンボリック名を返します。
戻り値
QueryBusInformation は、次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
STATUS_SUCCESS |
呼び出しは、正常に完了しました。 |
STATUS_BUFFER_TOO_SMALL |
バッファーが小さすぎます。 このエラー コードは、次の 2 つのケース で返されます。 Level == 0 の場合は常に、 BusInformationBuffer が指すバッファーのサイズが USB_BUS_INFORMATION_LEVEL_0 構造体のサイズより小さい場合に、このエラー コードが返されます。 Level == 1 の場合は常に、 BusInformationBuffer が指すバッファーのサイズが USB_BUS_INFORMATION_LEVEL_1 構造体のサイズより小さい場合、このエラー コードが返されます。 |
注釈
このルーチンによって返される正確な情報は、 Level パラメーターの値によって異なります。 このルーチンは、usbd.sys によって提供 されるUSBD_QueryBusInformation ライブラリ関数を置き換えます。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | usbbusif.h (Usbbusif.h を含む) |
IRQL | < = DISPATCH_LEVEL |