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


Функция ClfsCreateScanContext (wdm.h)

Подпрограмма ClfsCreateScanContext создает контекст сканирования, который можно использовать для перебора контейнеров указанного журнала CLFS.

Синтаксис

CLFSUSER_API NTSTATUS ClfsCreateScanContext(
  [in]      PLOG_FILE_OBJECT   plfoLog,
  [in]      ULONG              cFromContainer,
  [in]      ULONG              cContainers,
  [in]      CLFS_SCAN_MODE     eScanMode,
  [in, out] PCLFS_SCAN_CONTEXT pcxScan
);

Параметры

[in] plfoLog

Указатель на структуру LOG_FILE_OBJECT , представляющую поток CLFS. Контекст сканирования создается для журнала, который предоставляет базовое хранилище для этого потока. Вызывающий объект ранее получил этот указатель, вызвав ClfsCreateLogFile.

[in] cFromContainer

Индекс первого проверяемого контейнера. Контейнеры индексируются с нуля.

[in] cContainers

Количество контейнеров, проверяемых при каждом вызове ClfsScanLogContainers.

[in] eScanMode

Набор флагов, указывающих, настроен ли контекст сканирования для сканирования вперед или назад и следует ли повторно инициализировать контекст сканирования. Для вызывающих объектов этой подпрограммы доступны следующие три флага.

Значение Значение
CLFS_SCAN_FORWARD Настройте контекст сканирования для сканирования в направлении вперед. Например, если контейнер 5 является последним проверенным контейнером, а cContainers — 2, то при переадресовом сканировании будут возвращены дескрипторы для контейнеров 6 и 7.
CLFS_SCAN_BACKWARD Настройте контекст сканирования для сканирования в обратном направлении. Например, если контейнер 5 является последним проверенным контейнером, а cContainers — 2, то обратная проверка вернет дескрипторы для контейнеров 4 и 3.
CLFS_SCAN_INIT Повторно инициализируйте контекст сканирования. При следующем вызове ClfsScanLogContainers он будет вести себя так, как если бы он был вызван в первый раз после создания контекста сканирования.
 

Если pcxScan указывает на структуру CLFS_SCAN_CONTEXT, которая передается этой подпрограмме в первый раз, необходимо задать один из флагов направления (CLFS_SCAN_FORWARD или CLFS_SCAN_BACKWARD). Флаг CLFS_SCAN_INIT задавать нельзя.

Если pcxScan указывает на структуру CLFS_SCAN_CONTEXT, которая была передана этой подпрограмме ранее, необходимо установить флаг CLFS_SCAN_INIT. Кроме того, необходимо задать только один из флагов направления (CLFS_SCAN_FORWARD или CLFS_SCAN_BACKWARD).

[in, out] pcxScan

Указатель на структуру, выделенную вызывающим объектом, CLFS_SCAN_CONTEXT , члены которой инициализированы этой подпрограммой. Позже эта структура передается в ClfsScanLogContainers.

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

ClfsCreateScanContext возвращает STATUS_SUCCESS при успешном выполнении; в противном случае возвращается один из кодов ошибок в ntstatus.h.

Комментарии

Описание концепций и терминологии CLFS см. в разделе Common Log File System.

Требования

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

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

ClfsScanLogContainers