次の方法で共有


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