Функция 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 |