在备份期间使用备用路径

在某些情况下,要备份的文件不是这些文件的默认位置。

例如,某些编写器无法保证在 冻结解冻 事件之间的时间范围内刷新其数据。 此类编写器可以选择在非默认源目录或 备用路径中生成包含上一个已知良好配置的重复文件。

与 VSS 一起使用的术语“备用路径”不应与 术语“备用位置映射”混淆。 备用路径仅在备份操作期间使用,并引用要从中备份的备用源。 备用位置映射仅在还原操作期间使用,并引用还原操作的备用目标。

在备份期间使用备用路径

  1. 在备份操作的发现阶段 (请参阅 备份发现阶段概述) 请求者将使用 IVssExamineWriterMetadata::GetComponent 检查每个编写器的组件数据,并获取 IVssWMComponent 接口的实例。
  2. 然后,请求者通过调用 IVssWMComponent::GetFile 方法获取由每个组件管理的文件集,由 IVssWMFiledesc 接口的实例表示。
  3. 除了 IVssWMFiledesc::GetPath) 路径 (,文件规范 (IVssWMFiledesc::GetFilespec) , 和递归标志 (IVssWMFiledesc::GetRecursive) , IVssWMFiledesc 对象可能包含备用位置 (用作备份操作的备用路径,以及使用 IVssWMFiledesc::GetAlternateLocation 方法) 还原操作的备用位置映射。
  4. 如果 IVssWMFiledesc::GetAlternateLocation 返回的值不为 NULL,则备份应用程序使用该值而不是从 IVssWMFiledesc::GetPath 获取的值来选择要备份的文件。
  5. 尽管使用备用路径,请求者仍应遵循 IVssWMFiledesc::GetFilespecIVssWMFiledesc::GetRecursive 返回的文件规范和递归设置。

请注意,还原时,任何备用路径(即 IVssWMFiledesc::GetAlternateLocation 实例从 IVssWMComponent 实例返回的备用位置)都不会在还原期间使用,后者又是从 IVssExamineWriterMetadata 实例获取的,通过检索存储的编写器元数据文档获取。

) 相同 IVssWMFiledesc 实例的 GetPath 方法返回的默认路径 (用于定义还原位置,或者使用 IVssWMFiledesc::GetAlternateLocation 方法找到的备用位置映射指示要还原文件的位置 (请参阅还原) 期间使用备用位置