Поделиться через


Функция EngBugCheckEx (winddi.h)

Функция EngBugCheckEx приводит к отключению системы контролируемым образом, когда вызывающий объект обнаруживает неустранимую ошибку, которая повредила бы систему, если вызывающий объект продолжал работать.

Синтаксис

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

Параметры

[in] BugCheckCode

Задает значение, указывающее причину проверка ошибки.

[in] P1

Указатель на значение, которое предоставляет дополнительные сведения, такие как адрес и данные, в которых произошла ошибка повреждения памяти. Значение зависит от значения параметра BugCheckCode .

[in] P2

Указатель на значение, которое предоставляет дополнительные сведения, такие как адрес и данные, в которых произошла ошибка повреждения памяти. Значение зависит от значения параметра BugCheckCode .

[in] P3

Указатель на значение, которое предоставляет дополнительные сведения, такие как адрес и данные, в которых произошла ошибка повреждения памяти. Значение зависит от значения параметра BugCheckCode .

[in] P4

Указатель на значение, которое предоставляет дополнительные сведения, такие как адрес и данные, в которых произошла ошибка повреждения памяти. Значение зависит от значения параметра BugCheckCode .

Возвращаемое значение

None

Remarks

Ошибка проверка — это обнаруженная системой ошибка, которая приводит к немедленному контролируемому завершению работы системы. Когда графический драйвер обнаруживает неустранимую ошибку, он должен создать ошибку проверка.

Графический драйвер должен вызывать EngBugCheckEx только в случае неустранимой и неустранимой ошибки, которая может повредить систему. По возможности все графические драйверы должны регистрировать ошибку и продолжать работать. Например, если драйвер не может выделить необходимые ресурсы, он должен регистрировать ошибку, чтобы система продолжала работать; он не должен создавать ошибку проверка.

EngBugCheckEx может быть полезен на ранних этапах разработки графического драйвера или во время тестирования. В таких случаях значение BugCheckCode , переданное в эту функцию, должно отличаться от кодов, уже используемых Windows или ее драйверами. Список этих кодов см. в разделе Коды проверки ошибок.

Однако даже во время разработки драйвера эта процедура используется только с ограниченными возможностями, так как она приводит к полному завершению работы системы. Более эффективным методом отладки является присоединение отладчика ядра к системе, а затем использование подпрограмм, которые отправляют сообщения отладчику или прерваться в отладчик. Дополнительные сведения см. в разделе Использование кода отладки в драйвере.

Требования

Требование Значение
Минимальная версия клиента Эта функция доступна в Microsoft Windows Server 2003 и более поздних версиях.
Целевая платформа Универсальное
Верхняя часть winddi.h (включая Winddi.h)
Библиотека Win32k.lib
DLL Win32k.sys