CVssWriter::OnPrepareSnapshot 方法 (vswriter.h)

编写器调用 OnPrepareSnapshot 方法来处理 PrepareForSnapshot 事件。 它用于执行准备编写器以参与卷影复制或否决卷影副本所需的操作。

OnPrepareSnapshot 是一种纯虚拟方法。 它不是由 CVssWriter 基类实现的,必须由派生类实现。

语法

bool OnPrepareSnapshot();

返回值

此方法的实现必须返回 true ,出现严重错误时除外。 如果发生严重错误,方法必须调用 CVssWriter::SetWriterFailure 方法,以在返回 false 之前提供失败说明。 如果发生非严重错误,该方法仍应调用 SetWriterFailure ,但返回 true。 如果错误是由暂时性问题引起的,则 方法应在对 SetWriterFailure 的调用中指定VSS_E_WRITERERROR_RETRYABLE。

在发生故障的所有情况下,方法都应将事件写入事件日志,以报告失败的确切原因。

注解

OnPrepareSnapshot 方法执行任何卷影复制冻结之前所需的操作。

处理 PrepareForSnapshot 事件的超时窗口通常长于处理 冻结 事件的超时窗口。 因此,开发人员可以使用 OnPrepareSnapshot 来处理更耗时的操作。 编写器的典型用途可能是显式检查其数据。

编写器绝不应从此方法或任何其他 CVssWriter (Ex) ::OnXxx 回调方法引发异常。

如果此方法调用 CVssWriterEx2::GetSessionIdCVssWriter::SetWriterFailureCVssWriterEx2::SetWriterFailureEx 方法 ,则必须在调用此方法的同一线程中执行此操作。 有关详细信息,请参阅 编写器事件处理

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 vswriter.h (包括 Vss.h、VsWriter.h)
Library VssApi.lib

另请参阅

CVssWriter

CVssWriter::OnAbort

CVssWriter::OnFreeze

CVssWriter::OnThaw

CVssWriter::SetWriterFailure