次の方法で共有


IVssCreateExpressWriterMetadata::AddComponent メソッド (vswriter.h)

バックアップする Express ライターのコンポーネント セットにファイル グループを追加します。

構文

HRESULT AddComponent(
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] LPCWSTR            wszCaption,
  [in] const BYTE         *pbIcon,
  [in] UINT               cbIcon,
  [in] bool               bRestoreMetadata,
  [in] bool               bNotifyOnBackupComplete,
  [in] bool               bSelectable,
  [in] bool               bSelectableForRestore,
  [in] DWORD              dwComponentFlags
);

パラメーター

[in] ct

コンポーネント 型を指定するVSS_COMPONENT_TYPE列挙値。 このパラメーター では、VSS_CT_FILEGROUP のみがサポートされています。

[in] wszLogicalPath

データベースまたはファイル グループの論理パスを含む null で終わるワイド文字列へのポインター。 詳細については、「 コンポーネントの論理パス」を参照してください。

このパラメーターは省略可能であり、 NULL にすることができます

[in] wszComponentName

コンポーネントの名前を含む null で終わるワイド文字列へのポインター。 この文字列はローカライズされていません。

このパラメーターは必須であり、 NULL にすることはできません。 文字列に円記号を含めることはできません。

[in] wszCaption

コンポーネントの説明 ("フレンドリ名" とも呼ばれます) を含む null で終わるワイド文字列へのポインター。 この文字列はローカライズされる可能性があるため、要求者はローカライズされていると想定する必要があります。

このパラメーターは省略可能であり、 NULL にすることができます。 文字列には円記号を含めることができます。

[in] pbIcon

ユーザー インターフェイスに表示される、データベースを表すアイコンのビットマップへのポインター。 バッファーのサイズ (バイト単位) は cbIcon パラメーターで指定します。

このパラメーターは省略可能であり、 NULL にすることができます

[in] cbIcon

バッファーのサイズ (バイト数)。 pbIcon パラメーターが NULL の場合、cbIcon は 0 である必要があります。

[in] bRestoreMetadata

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

[in] bNotifyOnBackupComplete

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

[in] bSelectable

必要に応じてコンポーネントをバックアップできるか (つまり、バックアップから除外できる) か、ライターのコンポーネントがバックアップされたときに常にバックアップされるかを示すブール値。 このパラメーターは に設定する必要があります
コンポーネントを選択的にバックアップできる場合は true、いずれかのコンポーネントがバックアップされるときにコンポーネントがバックアップされる場合は false

[in] bSelectableForRestore

バックアップ ドキュメントに 明示的に含 まれていない場合に、コンポーネントを個別に復元できるかどうかを決定するブール値。 コンポーネントがバックアップ ドキュメントに明示的に追加された場合は、復元のためにいつでも個別に選択できます。この場合、このフラグは意味がありません。

このパラメーターが true の場合、コンポーネントはそれ自体で復元できます。 false の場合、コンポーネント セット全体が復元されている場合にのみ、コンポーネントを復元できます。 (詳細については、「 VSS_COMPONENTINFO選択性と論理パスの操作」を参照してください)。

このパラメーターの既定値は false です

[in] dwComponentFlags

このコンポーネントがサポート VSS_COMPONENT_FLAGS 機能を示す列挙値のビットマスク。 このビットマスクには 、VSS_CF_APP_ROLLBACK_RECOVERY または VSS_CF_BACKUP_RECOVERYを含めることはできません。

このパラメーターの既定値は 0 です。

戻り値

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

説明
S_OK
操作に成功しました。
E_INVALIDARG
パラメーター値の 1 つが無効です。
E_OUTOFMEMORY
呼び出し元がメモリやその他のシステム リソースを使い切れている。
VSS_E_INVALID_XML_DOCUMENT
XML ドキュメントが無効です。 詳細については、イベント ログを確認してください。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
VSS_E_OBJECT_ALREADY_EXISTS
オブジェクトが重複しています。 同じ論理パスとコンポーネント名を持つコンポーネントが既に存在します。
VSS_E_UNEXPECTED
予期しないエラー。 エラー コードは、エラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。

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

解説

このメソッドを複数回呼び出して、Express ライターのメタデータに複数のコンポーネントを追加できます。

指定したライター クラスの指定されたインスタンスの各コンポーネントの論理パスと名前の組み合わせは、一意である必要があります。 wszLogicalPathwszComponentName の値が同じ AddComponent を 2 回呼び出そうとすると、VSS_E_OBJECT_ALREADY_EXISTS エラーが発生します。

AddComponent を使用すると、すべてのメンバー ファイルがグループとしてバックアップされ、個別に復元できるファイルを含むコンポーネントであるサブコンポーネントを追加できます。 詳細については、「 Working with Selectability for Restore and Subcomponents」を参照してください。

要件

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

関連項目

IVssCreateExpressWriterMetadata