IVssBackupComponents::EnableWriterClasses 方法 (vsbackup.h)

EnableWriterClasses 方法使指定的编写器能够接收所有事件。

语法

HRESULT EnableWriterClasses(
  [in] const VSS_ID *rgWriterClassId,
  [in] UINT         cClassId
);

参数

[in] rgWriterClassId

包含一个或多个编写器类标识符的数组。

[in] cClassId

rgWriterClassId 数组中的条目数。

返回值

下面是此方法的有效返回代码。

含义
S_OK
已成功启用编写器类。
E_ACCESSDENIED
调用方没有足够的备份权限或不是管理员。
E_OUTOFMEMORY
调用方内存不足或其他系统资源。
VSS_E_BAD_STATE
备份组件对象未初始化,在还原操作期间调用了此方法,或者尚未在正确的顺序中调用此方法。
VSS_E_UNEXPECTED
意外错误。 错误代码记录在错误日志文件中。 有关详细信息,请参阅 VSS 下的事件和错误处理

Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 在 Windows Server 2008 R2 和 Windows 7 之前,不支持此值。 改用E_UNEXPECTED。

注解

如果 从未调用 EnableWriterClasses 方法和 IVssBackupComponents::D isableWriterClasses 方法,则启用所有编写器类。

首次调用 EnableWriterClasses 返回后,将启用 在 rgWriterClassId 数组中指定的编写器类,并禁用所有其他编写器类。

如果多次调用 EnableWriterClasses ,则每次调用都会将 rgWriterClassId 数组中的编写器添加到已启用的编写器列表中。

如果调用 EnableWriterClasses 一次或多次,然后调用 DisableWriterClasses,则对 DisableWriterClasses 的 调用将禁用 rgWriterClassId 数组中对 EnableWriterClasses 的调用中启用的任何编写器。

如果调用 EnableWriterClasses,则必须在调用 IVssBackupComponents::GatherWriterMetadata 方法之前执行此操作。 如果首先调用 GatherWriterMetadata ,然后调用 EnableWriterClasses,则对 EnableWriterClasses 的 调用不起作用。 如果需要首先调用 GatherWriterMetadata ,若要确定要启用哪些编写器类,则必须从 IVssBackupComponents 接口的其他实例调用它。

要求

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

另请参阅

IVssBackupComponents

IVssBackupComponents::D isableWriterClasses

IVssBackupComponents::D isableWriterInstances