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


Функция NdisWriteEventLogEntry (ndis.h)

NdisWriteEventLogEntry регистрирует событие в журнал событий Win32.

Синтаксис

NDIS_STATUS NdisWriteEventLogEntry(
  [in]           PVOID       LogHandle,
  [in]           NDIS_STATUS EventCode,
  [in]           ULONG       UniqueEventValue,
  [in]           USHORT      NumStrings,
  [in, optional] PVOID       StringsList,
  [in]           ULONG       DataSize,
  [in, optional] PVOID       Data
);

Параметры

[in] LogHandle

Указатель на объект драйвера протокола, который регистрируется в этом событии.

[in] EventCode

Указывает код NDIS_STATUS_XXX, описывающий событие.

[in] UniqueEventValue

Определяет этот экземпляр сообщения об ошибке.

[in] NumStrings

Указывает количество указателей на строки Юникода в необязательном StringsList. Если StringsListNULL, NumStrings должно быть равно нулю.

[in, optional] StringsList

Либо NULL, либо указывает на буферные строки Юникода. Эти строки, описывающие событие, вставляются в журнал событий Win32 и могут быть проверены с помощью средства просмотра событий Win32. Каждая строка должна быть строкой Юникода, завершаемой NUL.

[in] DataSize

Указывает количество байтов в буфере для двоичных данных в data. Если данныеNULL, DataSize должно быть равно нулю.

[in, optional] Data

Либо NULL, либо указывает на буферированные данные двоичного дампа, полезные для понимания события. Эти данные можно проверить с помощью средства просмотра событий Win32.

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

NdisWriteEventLogEntry может возвращать одно из следующих значений:

Возвращаемый код Описание
NDIS_STATUS_SUCCESS
Событие успешно зарегистрировано.
NDIS_STATUS_BUFFER_TOO_SHORT
Необязательные строки Юникода и двоичные данные дампа превышают максимальный допустимый размер (MAX_EVENT_LOG_DATA_SIZE).
NDIS_STATUS_RESOURCES
NDIS не удалось выделить память для записи журнала ошибок ввода-вывода.

Замечания

NdisWriteEventLogEntry выделяет запись журнала ошибок ввода-вывода, заполняет запись предоставленными сведениями о событии, а затем записывает запись в файл журнала ошибок ввода-вывода. Пользователь может просмотреть зарегистрированное событие, включая необязательное описание события и (или) необязательные двоичные данные дампа с помощью средства просмотра событий Win32.

Поток ведения журнала ошибок NT использует все строки, предоставленные в необязательном StringsList для заполнения сообщений, записанных в журнал событий Win32. Каждая строка должна быть строкой Юникода, завершаемой NUL. Диспетчер ввода-вывода предполагает, что начальная строка — это имя драйвера, сообщающего об ошибке, или имя устройства, вызвавшего ошибку.

Строки Юникода, предоставленные вызывающим оператором, должны быть прочитаны из реестра или должны быть независимыми от языка (т. е. строки должны совпадать на любом языке, например, строка может быть именем файла).

Данные дампа, предоставленные вызывающим абонентом, могут быть любыми двоичными данными (например, значениями регистра), полезными для понимания события. Вызывающий объект не должен заполнять двоичные данные. При необходимости NdisWriteEventLogEntry помещает данные двоичного дампа таким образом, чтобы окончательный размер данных был несколько целочисленным размером(ULONG).

Система ограничивает общий размер необязательных данных, предоставленных NdisWriteEventLogEntry. Объединенный размер списка строк и двоичный дамп (возможно, заполненный) должен быть меньше или равен MAX_EVENT_LOG_DATA_SIZE.

NdisWriteEventLogEntry вызывается только драйверами протокола. Драйверы минипорта должны вызывать NdisWriteErrorLogEntry для журналов событий и ошибок.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. NdisWriteEventLogEntry (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. NdisWriteEventLogEntry (NDIS 5.1)) в Windows XP.
целевая платформа Всеобщий
заголовка ndis.h (include Ndis.h)
библиотеки Ndis.lib
IRQL <= DISPATCH_LEVEL
правил соответствия DDI Irql_Miscellaneous_Function(ndis)

См. также

MiniportInitializeEx

MiniportResetEx

NdisMSetMiniportAttributes

NdisWriteErrorLogEntry