clfsAdvanceLogBase 函数 (wdm.h)

ClfsAdvanceLogBase 例程设置 CLFS 流的基 LSN。

语法

CLFSUSER_API NTSTATUS ClfsAdvanceLogBase(
  [in, out] PVOID     pvMarshalContext,
  [in]      PCLFS_LSN plsnBase,
  [in]      ULONG     fFlags
);

参数

[in, out] pvMarshalContext

指向表示与 CLFS 流关联的封送区域的不透明上下文的指针。 调用方以前通过调用 ClfsCreateMarshallingArea 获取了此指针。

[in] plsnBase

指向包含新基本 LSN 的 CLFS_LSN 结构的指针。 此参数必须是流中其中一条记录的 LSN。 此外,此参数必须大于或等于流的当前基础 LSN,并且必须小于或等于流的当前最后一个 LSN。

[in] fFlags

此参数保留供系统使用。 调用方必须将此参数设置为零。

返回值

如果成功,ClfsAdvanceLogBase 将返回STATUS_SUCCESS;否则,它将返回 Ntstatus.h 中定义的错误代码之一。

注解

ClfsAdvanceLogBase 不会将任何记录写入 CLFS 日志;仅对日志的更新位于元数据中。 如果要更新基本 LSN 并同时将重启记录写入流,请调用 ClfsWriteRestartArea

如果可能,CLFS 会避免将 LSN 小于新基本 LSN 的排队日志记录写入稳定存储。

ClfsAdvanceLogBase 不会检查查看 plsnBase 中提供的 LSN 是否实际上是流中某个记录的 LSN。 如果调用方将 plsnBase 设置为不是流中某个记录的 LSN 的 LSN,则流的基 LSN 将设置为无意义的值。

有关 CLFS 概念和术语的说明,请参阅 通用日志文件系统

要求

要求
最低受支持的客户端 在 Windows Server 2003 R2、Windows Vista 和更高版本的 Windows 中可用。
目标平台 桌面
标头 wdm.h (包括 Wdm.h)
Library Clfs.lib
DLL Clfs.sys
IRQL <= APC_LEVEL

另请参阅

ClfsWriteRestartArea