VSS の復元方法の設定
復元操作の構成は、実際には、ライターがライター メタデータ ドキュメントでデータの復元方法を指定するときに、データバックアップ中に開始されます。
Note
API MoveFileEx を使用してレジストリ ファイルを復元することはできません。
復元方法または元の復元ターゲットと呼ばれるこれらの仕様は、ライターが新しい復元ターゲットを設定するか、要求者が新しい場所に復元することによって復元中に変更できます (「既定以外のバックアップと復元の場所」を参照)。
ライターは 、IVssCreateWriterMetadata::SetRestoreMethod を呼び出すことによって、ライター メタデータ ドキュメントで使用する必要がある復元メソッドを示します。 restore メソッドはライター全体に設定され、ライターが管理するすべてのコンポーネント内のすべてのファイルに適用されます。
要求元は、 IVssExamineWriterMetadata::GetRestoreMethod を呼び出して、この情報を取得 (および尊重する必要があります) します。
復元メソッドは、IVssCreateWriterMetadata::SetRestoreMethod に渡され、IVssExamineWriterMetadata::GetRestoreMethod から返される、VSS_RESTOREMETHOD_ENUM列挙によって定義されます。
ライター メタデータ ドキュメントでは、次の有効な復元方法がサポートされています (VSS_RME_UNDEFINEDの復元方法はライター エラーを示します)。 この図は、サポートされているさまざまな復元メソッドと定義された復元メソッドを実装する方法をまとめたものです (VSS_RME_CUSTOMには、ライターに固有であり、特定のライター API とドキュメントに従う必要があるため、それに関連付けられている図形はありません)。
- VSS_RME_RESTORE_IF_NOT_THERE。 どのファイルもディスクにまだ存在しない場合は、コンポーネント ファイルをディスクに復元します。 PreRestore イベントの後にターゲット ファイルの状態を確認する必要があります。
- VSS_RME_RESTORE_IF_CAN_REPLACE。 すべてのファイルを置き換えることができる場合は、ファイルをディスクに復元します。 PreRestore イベントの後にターゲット ファイルの状態を確認する必要があります。
- VSS_RME_STOP_RESTORE_START。 ファイルを復元する前に、サービスが停止されます。
- VSS_RME_RESTORE_TO_ALTERNATE_LOCATION。 別の場所のディスクにファイルを復元します。 代替の場所マッピングは、ライター メタデータ ドキュメントで指定します。
- VSS_RME_RESTORE_AT_REBOOT。 コンピューターの再起動時にファイルを復元 (上書き) します。
- VSS_RME_RESTORE_AT_REBOOT_IF_CANNOT_REPLACE。 実行中のシステム上のディスクにファイルを復元できなかった場合は、コンピューターの再起動時に復元 (上書き) されます。
- VSS_RME_CUSTOM。 定義済みのメソッドは機能しません。バックアップ アプリケーションでは、復元操作を実行するために特殊な API を使用する必要があります。 このバックアップ方法では、リクエスターは問題のライターを完全に理解する必要があります。 現在サポートされているインスタンスについては、「 特殊な VSS の使用例」を 参照してください。