バックアップ中の代替パスの操作
バックアップするファイルがそれらのファイルの既定の場所ではない特定の状況があります。
たとえば、一部のライターは、 Freeze イベントと Thaw イベントの間の時間枠内でデータをフラッシュすることを保証できません。 このようなライターは、既定以外のソース ディレクトリまたは 代替パスで、最後に既知の適切な構成を含む重複するファイルを生成することを選択できます。
VSS で使用される代替パスという用語は、 代替場所マッピングという用語と混同しないでください。 代替パスは、バックアップ操作中にのみ使用され、バックアップ元の代替ソースを参照します。 代替の場所マッピングは、復元操作中にのみ使用され、復元操作の代替の宛先を参照します。
バックアップ中に代替パスを使用するには
- バックアップ操作の検出フェーズ中 ( 「バックアップ検出フェーズの概要」を参照)、リクエスターは IVssExamineWriterMetadata::GetComponent を使用して各ライターのコンポーネント データを調べ、 IVssWMComponent インターフェイスのインスタンスを取得します。
- 要求元は、IVssWMComponent::GetFile メソッドを呼び出して、IVssWMFiledesc インターフェイスのインスタンスで表される各コンポーネントによって管理されるファイル セットを取得します。
- パス (IVssWMFiledesc::GetPath)、ファイル仕様 (IVssWMFiledesc::GetFilespec)、および再帰フラグ (IVssWMFiledesc::GetRecur) に加えて IVssWMFiledesc オブジェクトには、IVssWMFiledesc::GetAlternateLocation メソッドを使用して、代替の場所 (バックアップ操作の代替パスとして使用され、復元操作用の代替の場所マッピングとして使用されます) が含まれる場合があります。
- IVssWMFiledesc::GetAlternateLocation によって返される値が NULL 以外の場合、バックアップ アプリケーションは IVssWMFiledesc::GetPath から取得した値の代わりにその値を使用して、バックアップするファイルを選択して検索します。
- 代替パスを使用しているにもかかわらず、リクエスターは IVssWMFiledesc::GetFilespec と IVssWMFiledesc::GetRecursive によって返されるファイルの仕様と再帰的な設定を尊重する必要があります。
復元時に、 IVssWMFiledesc::GetAlternateLocation のインスタンスから取得された IVssWMFiledesc::GetAlternateLocation のインスタンスによって返される代替パス は、復元中に格納されたライター メタデータ ドキュメントを取得することによって取得された IVssExamineWriterMetadata のインスタンスから取得されたものであることに注意してください。
既定のパス (IVssWMFiledesc の同じインスタンスの GetPath メソッドによって返されます) を使用して復元場所を定義するか、または IVssWMFiledesc::GetAlternateLocation メソッドを使用して見つかった代替の場所マッピングは、ファイルを復元する場所を示します (「復元中の代替の場所の操作」を参照)。