IVssCreateWriterMetadata::AddFilesToFileGroup メソッド (vswriter.h)
AddFilesToFileGroup メソッドは、指定したファイル グループ コンポーネントにファイル セット (指定したファイル) を追加します。
構文
HRESULT AddFilesToFileGroup(
[in] LPCWSTR wszLogicalPath,
[in] LPCWSTR wszGroupName,
[in] LPCWSTR wszPath,
[in] LPCWSTR wszFilespec,
[in] bool bRecursive,
[in] LPCWSTR wszAlternateLocation,
[in] DWORD dwBackupTypeMask
);
パラメーター
[in] wszLogicalPath
ファイルを追加するコンポーネントの論理パス (NULL である可能性があります) を含む null で終わるワイド文字列へのポインター。 詳細については、「 コンポーネントの論理パス」を参照してください。
[in] wszGroupName
ファイル グループ コンポーネントの名前を含む null で終わるワイド文字列へのポインター。 このコンポーネントの型はVSS_CT_FILEGROUPする必要があります。それ以外の場合、メソッドはエラーを返します。
[in] wszPath
追加するファイルの既定のルート ディレクトリを含む null で終わるワイド文字列へのポインター。
ディレクトリは VSS マシン上のローカル ディレクトリにすることも、リモート ファイル サーバー上のファイル共有ディレクトリにすることもできます。
UNC パスがサポートされています。
パスには環境変数 (%SystemRoot%) を含めることができますが、ワイルドカード文字を含めることはできません。
パスが円記号 ("") で終わるという要件はありません。 この情報をチェックに取得するのはアプリケーションです。
[in] wszFilespec
含めるファイルのファイル指定を含む null で終わるワイド文字列へのポインター。
ファイル指定にディレクトリ指定を含めることはできません (たとえば、円記号は含めません)。ただし、 を含めることができます。 および * ワイルドカード文字。
[in] bRecursive
wszPath パラメーターで指定されたパスが 1 つのディレクトリのみを識別するか、再帰的に走査するディレクトリの階層を示すかどうかを指定するブール値。 パスが繰り返されるディレクトリの階層として扱われる場合は true 、それ以外の場合は false に設定する必要があります。
マウントされたフォルダーの走査の詳細については、「マウント されたフォルダーの操作」および「ポイントの再解析」を参照してください。
[in] wszAlternateLocation
代替パスを含む null で終わるワイド文字列へのポインター。実際には、このコンポーネントでバックアップするファイルが含まれています。
ディレクトリは VSS マシン上のローカル ディレクトリにすることも、リモート ファイル サーバー上のファイル共有ディレクトリにすることもできます。
UNC パスがサポートされています。
代替パスの指定は省略可能です。代替パスが必要ない場合は、 wszAlternatePath を NULL にする必要があります。
代替パスは、代替の場所マッピングと混同しないでください。
[in] dwBackupTypeMask
ライターが特定の種類のバックアップ操作に参加するためにファイルを評価する必要があるかどうかを示す、 VSS_FILE_SPEC_BACKUP_TYPE 列挙値のビットマスク。
この引数の既定値は (VSS_FSBT_ALL_BACKUP_REQUIRED |VSS_FSBT_ALL_SNAPSHOT_REQUIRED)。
戻り値
このメソッドの有効なリターン コードを次に示します。
値 | 意味 |
---|---|
|
操作に成功しました。 |
|
パラメーター値の 1 つが無効であるか、呼び出し元がファイル グループ以外のコンポーネントにファイル グループ ファイルを追加しようとしました。 |
|
呼び出し元がメモリ不足またはその他のシステム リソースです。 |
|
XML ドキュメントが無効です。 詳細については、イベント ログを確認してください。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。 |
|
高速ライターの場合、 wszAlternatePath の値は NULL である必要があります。 dwBackupTypeMask ビットマスクには 、VSS_FSBT_DIFFERENTIAL_BACKUP_REQUIRED、 VSS_FSBT_INCREMENTAL_BACKUP_REQUIRED、または VSS_FSBT_LOG_BACKUP_REQUIREDを含めることはできません。 |
|
指定されたコンポーネントが存在しません。 |
|
予期しないエラー。 エラー コードはエラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値は、Windows Server 2008 R2 および Windows 7 まではサポートされません。 代わりに、E_UNEXPECTEDが使用されます。 |
注釈
Windows 7、Windows Server 2008 R2、Windows Vista、Windows Server 2008、Windows XP、Windows Server 2003: リモート ファイル共有は、Windows 8してWindows Server 2012するまでサポートされません。 ライターはローカル リソースのみをサポートします。絶対パスが有効なローカル ボリューム仕様で始まり、マップされたネットワーク ドライブにすることはできません。 したがって、AddFilesToFileGroup (環境変数の解決後) へのパス入力 (wszPath と wszAlternatePath) は、この形式である必要があります。
ライターは、このメソッドを複数回呼び出して、ファイル グループ コンポーネントに複数のファイル セットを追加できます。 ただし、特定のファイルは 1 回だけ指定できるため、ファイルの仕様が重複しないようにする必要があります。
ファイルのバックアップ元と復元先の場所は、 wszPath によって定義されたルート ディレクトリと wszAlternatePath によって定義される代替パスの値によって異なります。
AddFilesToFileGroup によって提供されるパス情報を使用する場合は、次の点に注意してください。
- 復元操作では、wszPath で定義されている既定のルート ディレクトリの下に AddFilesToFileGroup によってコンポーネントに追加されたファイルを復元する必要があります (可能な場合)。
- 代替パスが指定されていない場合 ( wszAlternatePath が NULL の場合)、コンポーネントに追加されたファイルは既定のルート ディレクトリからバックアップされ、 wszPath によって示される既定のルート ディレクトリに復元されます。
- 代替パスが指定されている場合 ( wszAlternatePath が NULL 以外の場合)、コンポーネントに追加されたファイルは wszAlternatePath で指定された代替パスからバックアップされます。 ただし、要求者は既定の復元場所として wszPath を引き続き使用します。
- 代替パスが定義されていて (wszAlternatePath が NULL 以外の場合)、代替パスと既定のルート ディレクトリ (wszPath) の両方にファイル仕様 (wszFilespec) に一致するファイルがある場合、バックアップ操作では、既定のルート ディレクトリの下にあるファイルではなく、代替パスの下にあるファイルをバックアップする必要があります。
- 代替の場所マッピングが IVssCreateWriterMetadata::AddAlternateLocationMapping によって設定され、復元方法または復元ターゲットで必要な場合を除き、wszPath によって示されるディレクトリにファイルを復元する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | vswriter.h (Vss.h、VsWriter.h を含む) |
Library | VssApi.lib |