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
指向表示 CLFS 流的 LOG_FILE_OBJECT 结构的指针。 为为该流提供基础存储的日志创建扫描上下文。 调用方之前通过调用 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 概念和术语的说明,请参阅 通用日志文件系统。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows Server 2003 R2、Windows Vista 和更高版本的 Windows 中可用。 |
目标平台 | 桌面 |
标头 | wdm.h (包括 Wdm.h) |
库 | Clfs.lib |
DLL | Clfs.sys |
IRQL | <= APC_LEVEL |