Функция ClfsScanLogContainers (wdm.h)
Программа ClfsScanLogContainers извлекает описательные сведения для последовательности контейнеров, принадлежащих определенному журналу CLFS.
Синтаксис
CLFSUSER_API NTSTATUS ClfsScanLogContainers(
[in, out] PCLFS_SCAN_CONTEXT pcxScan,
[in] CLFS_SCAN_MODE eScanMode
);
Параметры
[in, out] pcxScan
Указатель на структуру CLFS_SCAN_CONTEXT. Вызывающий объект ранее выделил структуру и инициализировал ее путем вызова ClfsCreateScanContext. В частности, элемент pInfoContainer был инициализирован для указания массива структур CLFS_CONTAINER_INFORMATION, а элемент cContainers был инициализирован в число элементов в массиве. При возврате структуры в массиве получают описательные сведения для контейнеров в последовательности.
[in] eScanMode
Набор флагов, указывающий направление сканирования и необходимость закрытия контекста сканирования. Следующие флаги доступны вызывающим абонентам этой подпрограммы.
Ценность | Значение |
---|---|
CLFS_SCAN_FORWARD | Сканирование в направлении вперед. Например, если контейнер 5 является последним отсканированным контейнером и pxcScan->cContainers равен двум, эта подпрограмма вернет дескрипторы для контейнеров 6 и 7. |
CLFS_SCAN_BACKWARD | Сканирование в обратном направлении. Например, если контейнер 5 является последним отсканированным контейнером и pxcScan->cContainers равен двум, эта подпрограмма вернет дескрипторы для контейнеров 4 и 3. |
CLFS_SCAN_CLOSE | Освободить все ресурсы, связанные с контекстом сканирования, на которые указывает pcxScan. |
Если установлен флаг CLFS_SCAN_CLOSE, необходимо очистить флаги CLFS_SCAN_FORWARD и CLFS_SCAN_BACKWARD.
Если флаг CLFS_SCAN_CLOSE понятен, необходимо задать только один из флагов направления (CLFS_SCAN_FORWARD или CLFS_SCAN_BACKWARD).
Возвращаемое значение
ClfsScanLogContainers возвращает STATUS_SUCCESS в случае успешного выполнения; в противном случае возвращается один из кодов ошибок, определенных в Ntstatus.h.
Замечания
СРЕДА CLFS использует структуру CLFS_SCAN_CONTEXT для отслеживания начала сканирования контейнера (члена cIndex) и количества контейнеров, отсканированных в каждом вызове ClfsScanLogContainers. Значение N элемента cContainers указывает, что каждый раз, когда вызывается ClfsScanLogContainers, следующие контейнеры N проверяются.
Элемент cContainersReturned структуры CLFS_SCAN_CONTEXT получает количество контейнеров, которые фактически сканируются в одном вызове ClfsScanLogContainers.
Когда ClfsScanLogContainers возвращает STATUS_NO_MORE_ENTRIES, больше контейнеров не требуется проверять.
После завершения работы с контекстом сканирования, на который указывает pcxScan, необходимо вызвать ClfsScanLogContainersс eScanMode равно CLFS_SCAN_CLOSE, чтобы освободить все ресурсы, связанные с контекстом сканирования.
Описание концепций и терминологии CLFS см. в common Log File System.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows Server 2003 R2, Windows Vista и более поздних версиях Windows. |
целевая платформа | Настольный |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | Clfs.lib |
DLL | Clfs.sys |
IRQL | <= APC_LEVEL |