共用方式為


IOCTL_HPMI_QUERY_CAPABILITIES IOCTL (hpmi.h)

[某些資訊與發行前的產品有關,在正式發行前可能會大幅修改。 Microsoft未就此處提供的資訊提供任何明示或默示擔保。

IOCTL_HPMI_QUERY_CAPABILITIES命令會傳送至查詢 HPMI 所要求之 HPMI 和 Windows 服務所支援的功能。 探索到新的 HPMI 驅動程式實例之後,Windows 會將此 IOCL 發行給 HPMI。

重要 初步資訊
 

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

I/O 要求封包的 AssociatedIrp.SystemBuffer 成員會指向啟動器配置的緩衝區,該緩衝區會同時作為輸入緩衝區和要求的輸出緩衝區。 在輸入時,這個緩衝區包含 HPMI_QUERY_CAPABILITIES 結構,其中版本設定為有效的值。

輸入緩衝區長度

IRP 目前 I/O 堆疊位置 (IO_STACK_LOCATION) 的參數.DeviceIoControl.InputBufferLength 成員會設定為 AssociatedIrp.SystemBuffer 成員所指向之緩衝區的位元組大小。 此大小必須大於或等於sizeof HPMI_QUERY_CAPABILITIES 結構,否則要求將會失敗,且錯誤狀態為 STATUS_INVALID_PARAMETER。

輸出緩衝區

如果要求成功完成,AssociatedIrp.SystemBuffer 成員所指向的緩衝區會包含要求的 HPMI 功能資訊。 位於這個緩衝區的開頭是 HPMI_QUERY_CAPABILITIES_RESPONSE 結構,表示緩衝區中資訊的類型和大小。

輸出緩衝區長度

IRP 目前 I/O 堆棧位置的參數.DeviceIoControl.OutputBufferLength 成員會設定為 AssociatedIrp.SystemBuffer 成員所指向之緩衝區的位元組大小。 若要讓要求成功,此大小必須夠大,才能包含 HPMI_QUERY_CAPABILITIES_RESPONSE中所述的 HPMI 功能。 否則,要求將會失敗,並出現錯誤狀態STATUS_BUFFER_TOO_SMALL。

輸入/輸出緩衝區

待定

輸入/輸出緩衝區長度

待定

狀態區塊

如果要求成功,Irp->IoStatus.Status 會設定為STATUS_SUCCESS。 否則,狀態 為適當的錯誤條件,例如STATUS_INVALID_PARAMETER NTSTATUS 程式代碼。

言論

IOCTL_HPMI_QUERY_CAPABILITIES 要求會查詢電源表的 HPMI 功能或資產資訊。 輸入 HPMI_QUERY_CAPABILITIES 結構值會指定要傳回的功能信息類型。 輸出緩衝區的數據類型和內容會根據所要求的數據而有所不同。

此 IOCTL 可能會發出多次,HPMI 必須使用相同的回應
HPMI_QUERY_CAPABILITIES_RESPONSE中的資訊,以回應全部
後續的IOCTL呼叫。

要求

要求 價值
最低支援的用戶端 適用於 Windows 10 版本 1709 和更新版本的 Windows作系統。
標頭 hpmi.h (包括 Hpmi.h)

另請參閱

在驅動程式 中建立IOCTL要求

IRP

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously