CVssWriter::OnBackupShutdown 方法 (vswriter.h)

OnBackupShutdown 方法由编写器在 BackupShutdown 事件后调用。 它用于在备份应用程序关闭时执行认为必要的操作,尤其是在备份应用程序崩溃的情况下。

OnBackupShutdown 是一种虚拟方法。 它由 CVssWriter 基类实现,但可由派生类重写。

语法

bool OnBackupShutdown(
  [in] VSS_ID SnapshotSetId
);

参数

[in] SnapshotSetId

备份操作中涉及的卷影副本集的标识符。

返回值

由基类实现的 OnBackupShutdown 始终返回 true

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

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

注解

CVssWriter 基类对此方法的默认实现返回 true,而不执行任何其他操作。

如果在备份应用程序关闭时编写器要执行特殊操作,则可以重写默认实现。

如果未成功执行卷影复制,则 snapshotSetId) (卷影副本集标识符的值将为 NULL

每当备份应用程序实际终止并释放其 IVssBackupComponents 时,将生成 BackupShutdown 事件。

BackupComplete 事件要求备份应用程序成功完成备份或正常失败;例如,如果备份应用程序被系统终止或在备份 (完成之前手动终止,则备份操作挂起且必须关闭) ,则可能不会发生这种情况。

因此,与 BackupComplete 事件相比,BackupShutdown 事件是备份应用程序结束的更可靠的信号。

编写器应维护状态信息,以便它可以跟踪是否为给定卷影副本集发送了 BackupComplete 事件。

OnBackupShutdown 的任何特定于编写器的实现都应检查是否处理了 BackupComplete 事件。 它应确保备份后所有必要的编写器清理操作 (成功或其他) 。

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

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

要求

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

另请参阅

CVssWriter

CVssWriter::OnBackupComplete

CVssWriter::SetWriterFailure

IVssBackupComponents::BackupComplete