次の方法で共有


IVssComponent::AddDirectedTarget メソッド (vswriter.h)

AddDirectedTarget メソッドを使用すると、ライターは、復元時にファイルを復元するときに、そのファイル (ソース ファイル) を再マップする必要があることを示すことができます。 ファイルは、新しい復元場所または復元場所内の異なるオフセットに復元されたデータの範囲に復元できます。

このメソッドは、復元操作中にのみライターによって呼び出すことができます。

BackupComplete (CSVsWriter::OnBackupComplete) イベントまたは BackupShutdown (CVssWriter::OnBackupShutdown) イベントの処理中に、このメソッドを呼び出すことはできません。

構文

HRESULT AddDirectedTarget(
  [in] LPCWSTR wszSourcePath,
  [in] LPCWSTR wszSourceFilename,
  [in] LPCWSTR wszSourceRangeList,
  [in] LPCWSTR wszDestinationPath,
  [in] LPCWSTR wszDestinationFilename,
  [in] LPCWSTR wszDestinationRangeList
);

パラメーター

[in] wszSourcePath

復元するファイル (ソース ファイル) を含む、復元時のディレクトリへのパスを含む Null で終わるワイド文字列。 このパスは、コンポーネントに既に含まれているファイル セットのパス (または、コンポーネントがコンポーネント セットを定義している場合はそのサブコンポーネントの 1 つ) と一致するか、そのパスの下にある必要があります。

[in] wszSourceFilename

復元時 (ソース ファイル) に再マップされるファイルの名前 (バックアップ時) を含む Null で終わるワイド文字列。 ファイルの名前 (wszSourceFilename) にはワイルドカード文字 (* または ?) を含めることはできません。また、ソース パス (wszSourcePath) を含むファイル セットのファイル指定と一致している必要があります。

[in] wszSourceRangeList

ソース ファイルのサポート範囲 (実際に復元するファイルのセクション) を示す、コンマ区切りのファイル オフセットと長さのリストを含む null で終わるワイド文字列。

ソース ファイルのサポート範囲の数と長さは、コピー先ファイルのサポート範囲の数とサイズと一致している必要があります。

[in] wszDestinationPath

復元時にソース ファイル データを再マップするパスを含む Null で終わるワイド文字列。

[in] wszDestinationFilename

復元時にソース ファイル データを再マップするファイルの名前を含む Null で終わるワイド文字列。 ファイルの名前 (wszDestinationFilename) にワイルドカード文字 (* または ?) を含めることはできません。

[in] wszDestinationRangeList

変換先ファイルのサポート範囲 (ソース ファイルのセクションを復元する場所) を示す、コンマ区切りのファイル オフセットと長さのリストを含む null で終わるワイド文字列。

コピー先ファイルのサポート範囲の数と長さは、ソース ファイルのサポート範囲の数とサイズと一致している必要があります。

戻り値

このメソッドの有効なリターン コードを次に示します。

意味
S_OK
アイテムを正常に設定しました。
E_INVALIDARG
パラメーター値の 1 つが無効です。
E_OUTOFMEMORY
呼び出し元がメモリやその他のシステム リソースを使い切れている。
VSS_E_BAD_STATE
このメソッドはライターによって呼び出されなかったか、ライターによって呼び出された場合は、復元操作中に呼び出されなかったか、 BackupComplete または BackupShutdown イベントの処理中に呼び出されました。

注釈

ライターのみが AddDirectedTarget を呼び出し、復元操作中にのみ呼び出すことができます。

リクエスターは、復元先がVSS_RT_DIRECTEDされている場合にのみ、バックアップ コンポーネント ドキュメントに格納されている指示されたターゲット情報を使用します。

AddDirectedTarget メソッドは、現在のコンポーネントで管理されている任意のファイル、またはコンポーネントがコンポーネント セットを定義している場合は、選択できないサブコンポーネントのいずれかに適用できます。

ソースファイルとコピー先ファイルの仕様は、同じファイルを指している場合があります。 これにより、復元時にファイルをそれ自体に再マップできます。

範囲リスト (wszSourceRangeswszDestinationRanges) の構文は、 offset1:length1, offset2:length2 という形式のコンマ区切りリストの構文です。各オフセットと長さは、それぞれバイト オフセットと長さをバイト単位で指定する 64 ビット整数です。 オフセットと長さは、16 進数または 10 進値で表すことができます。

エントリの数とそのサイズは、ソースと宛先の範囲の引数で一致する必要があります。

AddDirectedTarget は 、コンポーネントによって既に管理されている任意のファイル、またはコンポーネントがコンポーネント セットを定義している場合は、そのサブコンポーネントの 1 つをソース ファイルとして使用できます。

バックアップする部分的なファイル範囲が対象のターゲットの範囲と一致する場合は、部分ファイルを指示対象として追加できます ( 「IVssComponent::AddPartialFile」を参照してください)。 これにより、復元時に部分ファイルを再マップできます。

この場合、リクエスターは IVssComponent::GetDirectedTarget メソッドを呼び出してダイレクト ターゲット情報を取得し、復元時にバックアップされたデータの再マップを実装するために使用します。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー vswriter.h (Vss.h、VsWriter.h を含む)
Library VssApi.lib

こちらもご覧ください

IVssComponent

IVssComponent::GetDirectedTarget

IVssComponent::GetDirectedTargetCount