NdisGetHypervisorInfo, fonction (ndis.h)

Important  

À compter de Windows 10 version 1703, NdisGetHypervisorInfo est déconseillé et ne doit pas être utilisé. Les pilotes sont encouragés à s’en éloigner, car il est possible qu’il ne soit pas disponible dans les versions futures du système d’exploitation.

Les pilotes doivent plutôt suivre les instructions d’un hyperviseur pour interroger la présence et les capacités de l’hyperviseur. Par exemple, les instructions d’Hyper-V sont documentées dans la spécification fonctionnelle de niveau supérieur.

La fonction NdisGetHypervisorInfo retourne des informations sur l’hyperviseur présent sur le système.

Syntaxe

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

Paramètres

[in, out] HypervisorInfo

Pointeur vers une structure de NDIS_HYPERVISOR_INFO allouée à l’appelant qui contient des informations sur l’hyperviseur présent sur le système.

Valeur retournée

NdisGetHypervisorInfo peut retourner l’une des valeurs status suivantes :

Code de retour Description
NDIS_STATUS_SUCCESS
L’opération s’est terminée avec succès.
NDIS_STATUS_BUFFER_TOO_SHORT
La taille de la mémoire tampon du paramètre d’entrée était trop petite.

Remarques

Les pilotes miniportS NDIS appellent la fonction NdisGetHypervisorInfo pour déterminer si un hyperviseur est présent sur le système.

Lorsque la fonction NdisGetHypervisorInfo retourne, le paramètre HypervisorInfo contient un pointeur vers une structure NDIS_HYPERVISOR_INFO . Cette structure contient des informations sur la présence éventuelle d’un hyperviseur, ainsi que sur le type de partition à partir duquel cette fonction a été appelée. La structure NDIS_HYPERVISOR_INFO fournit ces informations de la manière suivante :

  • Si un hyperviseur est présent, l’indicateur NDIS_HYPERVISOR_INFO_FLAG_HYPERVISOR_PRESENT est défini dans le membre Indicateurs .
  • Si l’hyperviseur Microsoft est présent, le membre PartitionType est défini sur l’une des valeurs suivantes :
    • Si la fonction NdisGetHypervisorInfo a été appelée à partir du système d’exploitation de gestion qui s’exécute dans la partition parente Hyper-V, le membre PartitionType est défini sur NdisHypervisorPartitionTypeMsHvParent.
    • Si la fonction NdisGetHypervisorInfo a été appelée à partir du système d’exploitation invité qui s’exécute dans la partition enfant Hyper-V, le membre PartitionType est défini sur NdisHypervisorPartitionMsHvChild.
  • Si l’hyperviseur d’un autre fournisseur est présent, le membre PartitionType est défini sur NdisHypervisorPartitionTypeUnknown.
Note Un pilote doit initialiser le membre Header de la structure NDIS_HYPERVISOR_INFO avant d’appeler la fonction NdisGetHypervisorInfo .
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
Plateforme cible Universal
En-tête ndis.h (inclure Ndis.h)
Bibliothèque Ndis.lib
IRQL <= DISPATCH_LEVEL

Voir aussi

NDIS_HYPERVISOR_INFO