функция обратного вызова PSHED_PI_WRITE_ERROR_RECORD (ntddk.h)

Функция обратного вызова WriteErrorRecord подключаемого модуля PSHED записывает запись об ошибке в постоянное хранилище данных системы.

Синтаксис

PSHED_PI_WRITE_ERROR_RECORD PshedPiWriteErrorRecord;

NTSTATUS PshedPiWriteErrorRecord(
  [in, out, optional] PVOID PluginContext,
  [in]                ULONG Flags,
  [in]                ULONG RecordLength,
  [in]                PWHEA_ERROR_RECORD ErrorRecord
)
{...}

Параметры

[in, out, optional] PluginContext

Указатель на область контекста, указанную в элементе ContextWHEA_PSHED_PLUGIN_REGISTRATION_PACKET структуры, когда подключаемый модуль PSHED вызвал функцию PshedRegisterPlugin для регистрации в PSHED.

[in] Flags

Битовая комбинация or'ed флагов, влияющих на операцию записи. Возможный флаг:

WHEA_WRITE_FLAG_DUMMY

Операция записи является фиктивной операцией записи. Данные не записываются в постоянное хранилище данных системы.

[in] RecordLength

Размер (в байтах) записи об ошибке, на которую указывает параметр ErrorRecord .

[in] ErrorRecord

Указатель на структуру WHEA_ERROR_RECORD , описывающую запись об ошибке, записываемую в постоянное хранилище данных системы.

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

Функция обратного вызова WriteErrorRecord подключаемого модуля PSHED возвращает один из следующих кодов NTSTATUS:

Код возврата Описание
STATUS_SUCCESS Запись об ошибке успешно записана в постоянное хранилище данных системы.
STATUS_UNSUCCESSFUL Произошла ошибка.

Комментарии

Подключаемый модуль PSHED, участвующий в сохраняемости записи об ошибках, задает callbacks.WriteErrorRecord, Элементы Callbacks.ReadErrorRecord и Callbacks.ClearErrorRecordструктуры WHEA_PSHED_PLUGIN_REGISTRATION_PACKET , указывающие на функции обратного вызова WriteErrorRecord, ReadErrorRecord и ClearErrorRecord , когда подключаемый модуль вызывает функцию PshedRegisterPlugin для регистрации в PSHED. Подключаемый модуль PSHED также должен установить флаг PshedFAErrorRecordPersistence в элементе FunctionalAreaMaskструктуры WHEA_PSHED_PLUGIN_REGISTRATION_PACKET .

Ядро Windows вызывает PSHED для записи записи ошибок в постоянное хранилище данных системы при возникновении неустранимого или неустранимого состояния ошибки, чтобы сохранить запись об ошибке во время перезапуска системы. Если подключаемый модуль PSHED зарегистрирован для участия в сохраняемости записи ошибок, PSHED вызывает функцию обратного вызова WriteErrorRecord подключаемого модуля PSHED для выполнения операции записи. Механизм, используемый для записи записи ошибки в постоянное хранилище данных системы, зависит от платформы.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть ntddk.h (включая Ntddk.h)
IRQL IRQL >= DISPATCH_LEVEL

См. также раздел

ClearErrorRecord

PshedRegisterPlugin

ReadErrorRecord

WHEA_ERROR_RECORD

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET