Прочитать на английском

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


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

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

Синтаксис

C++
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 (include Wdm.h)
библиотеки Clfs.lib
DLL Clfs.sys
IRQL <= APC_LEVEL

См. также

ClfsScanLogContainers