仮想プロセッサのローカル APIC 状態を取得します。
Important
WHvGetVirtualProcessorInterruptControllerState2 は非推奨とされます。 代わりに、WHvVirtualProcessorStateTypeInterruptControllerState2状態の種類でWHvGetVirtualProcessorStateを使用します。
Note
この関数は x64 パーティションにのみ適用されます。
構文
HRESULT
WINAPI
WHvGetVirtualProcessorInterruptControllerState2(
_In_ WHV_PARTITION_HANDLE Partition,
_In_ UINT32 VpIndex,
_Out_writes_bytes_to_(StateSize, *WrittenSize) VOID* State,
_In_ UINT32 StateSize,
_Out_opt_ UINT32* WrittenSize
);
Parameters
Partition
パーティション オブジェクトへのハンドル。
VpIndex
割り込みコントローラーの状態を取得する仮想プロセッサのインデックスを指定します。
State
割り込みコントローラーの状態を受け取ります。
StateSize
Stateのサイズをバイト単位で指定します。
WrittenSize
NULL 以外の場合は、 Stateに書き込まれたバイト数を受け取ります。 バッファーが小さすぎると、必要なバイト数を受け取ります。
戻り値
関数が成功した場合、戻り値は S_OK。
Stateが小さすぎて割り込みコントローラーの状態を含めなければ、戻り値はWHV_E_INSUFFICIENT_BUFFERされ、WrittenSizeは必要なバイト数を受け取ります。
VpIndexが既存の仮想プロセッサを識別しない場合、戻り値はWHV_E_VP_DOES_NOT_EXIST。 仮想プロセッサに現在の状態でアクセスできない場合、戻り値は WHV_E_INVALID_VP_STATE。
Remarks
WHvGetVirtualProcessorInterruptControllerState2関数は、指定された仮想プロセッサのローカル APIC 状態を標準の外部状態形式で取得します。 非推奨の WHvGetVirtualProcessorInterruptControllerStateよりも優先されます。これは、割り込み要求、サービス内、トリガー モードの各ベクトルを標準の外部状態形式とは異なる方法でパックし、プロセッサの優先度レジスタを含まないレガシ形式を返します。
この関数では、パーティションに対してローカル APIC のエミュレーションを構成する必要があります。
Requirements
| 要件 | 価値 |
|---|---|
| サポートされている最小Windows | Windows 10 バージョン 2004 |
| Header | WinHvPlatform.h |
| 図書館 | WinHvPlatform.lib |
| DLL | WinHvPlatform.dll |
| Architecture | x64 |