共用方式為


NdisGetHypervisorInfo 函式 (ndis.h)

重要  

從 Windows 10 版本 1703 開始,NdisGetHypervisorInfo 已被取代,不應使用。 建議驅動程式遠離該驅動程式,因為未來版本的作系統可能無法使用。

驅動程式應該改為遵循 Hypervisor 的指示來查詢 Hypervisor 是否存在和功能。 例如,Hyper-V 的指示記載於 Top-Level 功能規格中。

NdisGetHypervisorInfo 函式會傳回系統上存在的 Hypervisor 相關信息。

語法

NDIS_STATUS NdisGetHypervisorInfo(
  [in, out] PNDIS_HYPERVISOR_INFO HypervisorInfo
);

參數

[in, out] HypervisorInfo

呼叫端配置的 NDIS_HYPERVISOR_INFO 結構的指標,其中包含系統上存在的 Hypervisor 相關信息。

傳回值

NdisGetHypervisorInfo 可以傳回下列其中一個狀態值:

傳回碼 描述
NDIS_STATUS_SUCCESS
作業已順利完成。
NDIS_STATUS_BUFFER_TOO_SHORT
輸入參數緩衝區的大小太小。

言論

NDIS 迷你埠驅動程式會呼叫 NdisGetHypervisorInfo 函式,以判斷系統上是否有 Hypervisor。

NdisGetHypervisorInfo 函式傳回時,HypervisorInfo 參數會包含 NDIS_HYPERVISOR_INFO 結構的指標。 此結構包含 Hypervisor 是否存在的相關信息,以及呼叫此函式的分割區類型。 NDIS_HYPERVISOR_INFO 結構會以下列方式提供這項資訊:

  • 如果 Hypervisor 存在,則會在 旗標 成員中設定 NDIS_HYPERVISOR_INFO_FLAG_HYPERVISOR_PRESENT 旗標。
  • 如果Microsoft Hypervisor 存在,PartitionType 成員會設定為下列其中一個值:
    • 如果 NdisGetHypervisorInfo 函式是從在 Hyper-V 父分割中執行的管理作系統呼叫,則 PartitionType 成員會設定為 NdisHypervisorPartitionTypeMsHvParent
    • 如果從在 Hyper-V 子分割中執行的客體作系統呼叫 NdisGetHypervisorInfo 函式,則 PartitionType 成員會設定為 NdisHypervisorPartitionMsHvChild
  • 如果有另一個廠商的 Hypervisor,PartitionType 成員會設定為 NdisHypervisorPartitionTypeUnknown
注意 驅動程式必須先初始化 NDIS_HYPERVISOR_INFO 結構 標頭成員,才能呼叫 NdisGetHypervisorInfo 函式。
 

要求

要求 價值
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平臺 普遍
標頭 ndis.h (包括 Ndis.h)
連結庫 Ndis.lib
IRQL <= DISPATCH_LEVEL

另請參閱

NDIS_HYPERVISOR_INFO