Partager via


Fonction EngBugCheckEx (winddi.h)

La fonction EngBugCheckEx fait tomber le système de manière contrôlée lorsque l’appelant découvre une erreur irrécupérable qui endommagerait le système si l’appelant continuait à s’exécuter.

Syntaxe

ENGAPI VOID EngBugCheckEx(
  [in] ULONG     BugCheckCode,
  [in] ULONG_PTR P1,
  [in] ULONG_PTR P2,
  [in] ULONG_PTR P3,
  [in] ULONG_PTR P4
);

Paramètres

[in] BugCheckCode

Spécifie une valeur qui indique la raison du bogue case activée.

[in] P1

Pointeur vers une valeur qui fournit des informations supplémentaires, telles que l’adresse et les données où une erreur d’altération de la mémoire s’est produite. La valeur dépend de la valeur du paramètre BugCheckCode .

[in] P2

Pointeur vers une valeur qui fournit des informations supplémentaires, telles que l’adresse et les données où une erreur d’altération de la mémoire s’est produite. La valeur dépend de la valeur du paramètre BugCheckCode .

[in] P3

Pointeur vers une valeur qui fournit des informations supplémentaires, telles que l’adresse et les données où une erreur d’altération de la mémoire s’est produite. La valeur dépend de la valeur du paramètre BugCheckCode .

[in] P4

Pointeur vers une valeur qui fournit des informations supplémentaires, telles que l’adresse et les données où une erreur d’altération de la mémoire s’est produite. La valeur dépend de la valeur du paramètre BugCheckCode .

Valeur de retour

None

Remarques

Un bogue case activée est une erreur détectée par le système qui provoque un arrêt immédiat et contrôlé du système. Lorsqu’un pilote graphique découvre une erreur irrécupérable, il doit générer un bogue case activée.

Un pilote graphique doit appeler EngBugCheckEx uniquement en cas d’erreur irrécupérable irrécupérable qui pourrait endommager le système. Dans la mesure du possible, tous les pilotes graphiques doivent consigner une erreur et continuer à s’exécuter. Par exemple, si un pilote ne parvient pas à allouer les ressources requises, il doit consigner une erreur afin que le système continue à s’exécuter ; il ne doit pas générer de bogue case activée.

EngBugCheckEx peut être utile dans les premières phases du développement d’un pilote graphique ou pendant qu’il est en cours de test. Dans ce cas, la valeur BugCheckCode passée à cette fonction doit être distincte des codes déjà utilisés par Windows ou ses pilotes. Pour obtenir la liste de ces codes, consultez Codes de vérification des bogues.

Toutefois, même pendant le développement du pilote, cette routine n’est que d’une utilisation limitée, car elle entraîne un arrêt complet du système. Une méthode de débogage plus efficace consiste à attacher un débogueur de noyau au système, puis à utiliser des routines qui envoient des messages au débogueur ou s’entrent dans le débogueur. Pour plus d’informations, consultez Utilisation du code de débogage dans un pilote.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Cette fonction est disponible dans Microsoft Windows Server 2003 et versions ultérieures.
Plateforme cible Universal
En-tête winddi.h (inclure Winddi.h)
Bibliothèque Win32k.lib
DLL Win32k.sys