IVssBackupComponents::AddRestoreSubcomponent メソッド (vsbackup.h)

AddRestoreSubcomponent メソッドは、コンポーネント セットのサブコンポーネント メンバー (バックアップでは選択不可としてマークされていたが、復元に選択可能とマークされている) が、コンポーネント セットの他のメンバーが復元されるかどうかに関係なく復元されることを示します。

構文

HRESULT AddRestoreSubcomponent(
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE componentType,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] LPCWSTR            wszSubComponentLogicalPath,
  [in] LPCWSTR            wszSubComponentName,
  [in] bool               bRepair
);

パラメーター

[in] writerId

ライター クラス識別子。

[in] componentType

コンポーネントの種類を識別します。 可能な戻り値については、 VSS_COMPONENT_TYPE に関するドキュメントを参照してください。

[in] wszLogicalPath

復元用に追加するサブコンポーネントを含むバックアップ コンポーネント セットを定義する、バックアップ ドキュメント内のコンポーネントの論理パスを含む Null で終わるワイド文字列。

このパラメーターの値は NULL にすることができます。

NULL 以外の論理パスに使用できる文字に制限はありません。

[in] wszComponentName

復元用に追加するサブコンポーネントを含むバックアップ コンポーネント セットを定義する、バックアップ ドキュメント内のコンポーネントの論理パスを含む Null で終わるワイド文字列。

このパラメーターの値を NULL にすることはできません。

NULL 以外のコンポーネント名に使用できる文字に制限はありません。

[in] wszSubComponentLogicalPath

復元のために追加するサブコンポーネントの論理パスを含む Null で終わるワイド文字列。

サブコンポーネントを追加する場合は、論理パスが必要です。 したがって、このパラメーターの値を NULL にすることはできません。

NULL 以外の論理パスに使用できる文字に制限はありません。

[in] wszSubComponentName

復元のために追加するサブコンポーネントの論理名を含む Null で終わるワイド文字列。

このパラメーターの値を NULL にすることはできません。

NULL 以外のコンポーネント名に使用できる文字に制限はありません。

[in] bRepair

このパラメーターは将来使用するために予約されています。 このパラメーターは常に false に設定する必要があります

戻り値

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

値 意味
S_OK
復元サブコンポーネントが正常に追加されました。
E_INVALIDARG
パラメーター値の 1 つが無効です。
E_OUTOFMEMORY
呼び出し元がメモリ不足またはその他のシステム リソースです。
VSS_E_BAD_STATE
バックアップ コンポーネント オブジェクトが初期化されていないか、復元操作中にこのメソッドが呼び出されていないか、このメソッドが正しいシーケンス内で呼び出されていません。
VSS_E_INVALID_XML_DOCUMENT
XML ドキュメントが無効です。 詳細については、イベント ログを確認してください。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
VSS_E_OBJECT_NOT_FOUND
コンポーネントが存在しません。
VSS_E_UNEXPECTED
予期しないエラー。 エラー コードはエラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。

Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値は、Windows Server 2008 R2 および Windows 7 まではサポートされません。 代わりに、E_UNEXPECTEDが使用されます。

注釈

AddRestoreSubcomponent を呼び出す前に、iVssBackupComponents::SetSelectedForRestore を使用して復元するために、wszLogicalPath パラメーターと wszComponentName パラメーターで定義されているルート コンポーネントを最初に選択する必要があります。

リクエスターがサブコンポーネントの復元をサポートする場合は、 IVssBackupComponents::P reRestore の前にこのメソッドを呼び出す必要があります。

AddRestoreSubcomponent は、ライターのコンポーネント セット内のすべてのファイルを 1 つのユニットとしてバックアップする必要があるが、選択したファイル (サブコンポーネント) を個別に復元できることが望ましい場合を対象としています。

このような復元に参加するには、サブコンポーネントの bSelectableForRestore メンバー VSS_COMPONENTINFOTRUE に設定されている必要があります。 iVssBackupComponents::SetSelectedForRestore を使用して復元するには、wszLogicalPath パラメーターと wszComponentName パラメーターで定義されたコンポーネントも選択する必要があります。

詳細については、「 復元とサブコンポーネントの選択性の使用 」を参照してください。

要件

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

こちらもご覧ください

IVssBackupComponents

IVssBackupComponents::P reRestore

VSS_COMPONENT_TYPE