卷影复制上下文配置
请求者通过设置卷影副本的上下文来控制其功能。 此上下文指示卷影副本是否在当前操作中幸存下来,以及编写器/提供程序协调的程度。
持久性和卷影复制上下文
卷影副本可能是 永久性的,也就是说,在终止备份操作或释放 IVssBackupComponents 对象后不会删除卷影副本。
永久性卷影副本需要 _VSS_SNAPSHOT_CONTEXTVSS_CTX_CLIENT_ACCESSIBLE、 VSS_CTX_APP_ROLLBACK或 VSS_CTX_NAS_ROLLBACK上下文。 只能为 NTFS 卷创建永久性卷影副本。
使用 VSS_CTX_BACKUP 或 VSS_CTX_FILE_SHARE_BACKUP上下文创建非持久性卷影副本。 可以为 NTFS 卷和非 NTFS 卷创建非持久性卷影副本。
编写器参与和卷影副本
卷影副本上下文可以分类为涉及编写器或不涉及编写器。
卷影复制上下文(涉及编写器)包括:
- VSS_CTX_APP_ROLLBACK
- VSS_CTX_BACKUP
- VSS_CTX_CLIENT_ACCESSIBLE_WRITERS
那些不涉及作者的创建包括:
- VSS_CTX_CLIENT_ACCESSIBLE
- VSS_CTX_FILE_SHARE_BACKUP
- VSS_CTX_NAS_ROLLBACK
一个上下文可用于这两种类型的卷影副本,但不能用于创建卷影副本:
- VSS_CTX_ALL
不支持使用 IVssBackupComponents::StartSnapshotSet 和 IVssBackupComponents::D oSnapshotSet) 创建上下文为 VSS_CTX_ALL (的卷影副本。
支持 VSS_CTX_ALL 上下文的操作包括管理操作 IVssBackupComponents::Query、 IVssBackupComponents::D eleteSnapshots、 IVssBackupComponents::BreakSnapshotSet 和 IVssBackupComponents::ExposeSnapshot。
获取卷影副本信息
如果请求者知道卷影副本 (其VSS_ID) 的标识 GUID,则它可以通过解压缩调用 IVssBackupComponents::GetSnapshotProperties 返回的VSS_SNAPSHOT_PROP结构来获取由其VSS_ID) 标识的特定卷影 (副本的上下文的相关信息。
若要获取有关系统上所有卷影副本的上下文信息,请求者将检查 VSS_OBJECT_PROP (的 Obj.Snap 成员的m_lSnapshotAttributes成员,该成员是通过使用 IVssEnumObject 循环访问调用 IVssBackupComponents::Query 所获取的VSS_SNAPSHOT_PROP结构) 结构。