IVssBackupComponentsEx::SetSelectedForRestoreEx メソッド (vsbackup.h)
SetSelectedForRestoreEx メソッドは、指定したライター インスタンスへの復元のために、指定した選択可能なコンポーネントが選択されているかどうかを示します。
構文
HRESULT SetSelectedForRestoreEx(
[in] VSS_ID writerId,
[in] VSS_COMPONENT_TYPE ct,
[in] LPCWSTR wszLogicalPath,
[in] LPCWSTR wszComponentName,
[in] bool bSelectedForRestore,
[in] VSS_ID instanceId
);
パラメーター
[in] writerId
ライター クラスのグローバル一意識別子 (GUID)。
[in] ct
コンポーネントの種類。 使用可能 な 値については、「VSS_COMPONENT_TYPE」を参照してください。
[in] wszLogicalPath
コンポーネントの論理パスを含む Null で終わるワイド文字列。 詳細については、「 コンポーネントの論理パス」を参照してください。
ここで使用する論理パスを含む文字列の値は、コンポーネントの追加時に使用されたものと同じである必要があります。
論理パスには NULL を指定できます。
NULL 以外の論理パスに出現できる文字に制限はありません。
[in] wszComponentName
コンポーネントの名前を含む Null で終わるワイド文字列。
文字列を NULL にすることはできません。 また、コンポーネントが IVssBackupComponents::AddComponent メソッドを使用してバックアップ セットに追加されたときに使用されたものと同じコンポーネント名を含める必要があります。
[in] bSelectedForRestore
このパラメーターの値が true の場合、選択したコンポーネントが復元用に選択されています。 値が false の場合、選択したコンポーネントは復元用に選択されていません。
[in] instanceId
ライター インスタンスの GUID。
このパラメーターの既定値はGUID_NULLです。
戻り値
このメソッドの有効なリターン コードを次に示します。
値 | 意味 |
---|---|
|
指定したコンポーネントが復元対象として選択されたことが正常に示されました。 |
|
パラメーター値の 1 つが無効です。 |
|
呼び出し元がメモリやその他のシステム リソースを使い切れている。 |
|
バックアップ コンポーネント オブジェクトが初期化されていないか、復元操作中にこのメソッドが呼び出されたか、このメソッドが正しいシーケンス内で呼び出されていません。 |
|
選択されているコンポーネントがバックアップ コンポーネント ドキュメントに存在しないか、そのコンポーネントに対応するライターのライブ インスタンスがシステム上で実行されていません。 |
|
XML ドキュメントが無効です。 詳細については、イベント ログを確認してください。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。 |
|
予期しないエラー。 エラー コードは、エラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値は、Windows Server 2008 R2 と Windows 7 まではサポートされません。 代わりに E_UNEXPECTED が使用されます。 |
注釈
コンポーネントを別のライター インスタンスに移動する SetSelectedForRestoreEx は、同じクラス ID を持つ複数のライター インスタンスの実行をサポートし、復元時に別のライター インスタンスへのコンポーネントの移動をサポートするライターに対してのみ呼び出すことができます。 ライターがこのサポートを提供しているかどうかを判断するには、 IVssExamineWriterMetadata::GetBackupSchema メソッドを 呼び出します。
SetSelectedForRestoreEx は、コンポーネント モードで行われる復元に対してのみ意味があります。
SetSelectedForRestoreEx は、バックアップ時に AddComponent を使用してバックアップ ドキュメントに明示的に追加されたコンポーネントに対してのみ呼び出すことができます。 コンポーネント セットの一部としてバックアップ用に暗黙的に選択されたコンポーネントの復元は、ドキュメントに追加された最も近い先祖コンポーネントで SetSelectedForRestoreEx を呼び出すことによって行う必要があります。 このコンポーネントのデータのみを復元する場合は、 IVssBackupComponents::AddRestoreSubcomponent メソッドを使用して実行する必要があります。これは、コンポーネントが復元可能な場合にのみ実行できます (「 選択性と論理パスの操作」を参照してください)。
このメソッドは、 IVssBackupComponents::P reRestore メソッドの前に呼び出す必要があります。
同じライターの複数のインスタンスがコンピューター上で実行されている可能性があるため、 instanceId パラメーターと writerID パラメーターの区別が必要です。
instanceId パラメーターの値がGUID_NULLの場合、これは IVssBackupComponents::SetSelectedForRestore メソッドを呼び出すことと同じです。
instanceId パラメーターは、コンポーネントを別のライター インスタンスに復元することを指定するために使用されます。 instanceId パラメーターの値がGUID_NULLされていない場合は、writerID パラメーターで指定されたのと同じライター クラス ID を持つライター インスタンスのインスタンス ID と一致する必要があります。
ライターのクラス識別子、インスタンス識別子、およびインスタンス名は、 IVssExamineWriterMetadataEx::GetIdentityEx メソッドを呼び出すことで確認できます。
要件
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008、Windows Server 2003 SP1 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | vsbackup.h (VsBackup.h、Vss.h、VsWriter.h を含む) |
Library | VssApi.lib |
こちらもご覧ください
IVssBackupComponents::SetSelectedForRestore