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


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

Функция ClfsLogGrowthCompleteCallback реализует действия, которые клиент будет выполнять при освобождении места в журнале, который ранее был заполнен.

Синтаксис

PCLFS_CLIENT_LFF_HANDLER_COMPLETE_CALLBACK PclfsClientLffHandlerCompleteCallback;

void PclfsClientLffHandlerCompleteCallback(
  [in] PLOG_FILE_OBJECT LogFile,
  [in] NTSTATUS OperationStatus,
  [in] BOOLEAN LogIsPinned,
  [in] PVOID ClientData
)
{...}

Параметры

[in] LogFile

Указатель на структуру LOG_FILE_OBJECT , представляющую поток журналов CLFS, для которого завершено расширение журнала.

[in] OperationStatus

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

[in] LogIsPinned

Если задано значение TRUE, указывает, что хвост журнала в настоящее время закреплен; FALSE , если хвост журнала не закреплен.

[in] ClientData

Указатель на сведения, предоставленные клиентом.

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

None

Remarks

Так как вызов ClfsMgmtHandleLogFileFull завершается асинхронно, все действия, которые клиент будет выполнять при обработке полного условия файла журнала, относятся к функции ClfsLogGrowthCompleteCallback .

Если вызов подпрограммы ClfsMgmtHandleLogFileFull возвращает STATUS_PENDING, то после завершения операции будет вызвана функция ClfsLogGrowthCompleteCallback . Если было возвращено другое состояние, функция ClfsLogGrowthCompleteCallback вызываться не будет.

Функция ClfsLogGrowthCompleteCallback должна выполнять только минимальный объем обработки перед возвратом. Например, функция ClfsLogGrowthCompleteCallback может выполнять следующую процедуру:

  1. Если значение параметра OperationStatus является состоянием ошибки, возвращается.
  2. Если значение параметра OperationStatus равно STATUS_SUCCESS, создайте и поставить рабочий элемент в очередь, чтобы сообщить клиенту, что он может возобновить обработку.
Когда клиент использует подпрограмму ClfsMgmtRegisterManagedClient для регистрации в системе управления CLFS, клиент предоставляет указатель на функцию ClfsLogGrowthCompleteCallback и пользовательские данные, которые будут переданы в качестве параметра функции ClfsLogGrowthCompleteCallback при вызове этой функции.

Требования

Требование Значение
Минимальная версия клиента Поддерживается в Windows Server 2003 R2, Windows Vista и более поздних версиях Windows.
Целевая платформа Персональный компьютер
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
IRQL Вызывается в IRQL <= APC_LEVEL

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

ClfsMgmtHandleLogFileFull

ClfsMgmtRegisterManagedClient