次の方法で共有


IVssSoftwareSnapshotProvider::IsVolumeSupported メソッド (vsprov.h)

プロバイダーが、指定したボリューム上のシャドウ コピーをサポートするかどうかを決定します。

構文

HRESULT IsVolumeSupported(
  [in]  VSS_PWSZ pwszVolumeName,
  [out] BOOL     *pbSupportedByThisProvider
);

パラメーター

[in] pwszVolumeName

ボリューム名を含む Null で終わるワイド文字列。 名前は次のいずれかの形式にする必要があり、末尾に円記号 (\) を含める必要があります。

  • マウントされたフォルダーのパス (Y:\MountX\ など)
  • ドライブ文字 (D:\ など)
  • \\?\Volume{GUID}\ という形式のボリューム GUID パス ( GUID はボリュームを識別します)

[out] pbSupportedByThisProvider

指定したボリュームでシャドウ コピーがサポートされている場合、このパラメーターは TRUE を 受け取り、それ以外の場合 は FALSE を受け取ります。

戻り値

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

説明
S_OK
要求された情報が正常に返されました。
E_ACCESSDENIED
呼び出し元が十分なバックアップ特権を持っていないか、管理者ではありません。
E_INVALIDARG
パラメーター値の 1 つが無効です。
VSS_E_NESTED_VOLUME_LIMIT
指定されたボリュームが深すぎて VSS 操作に参加できません。

Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: このリターン コードはサポートされていません。

E_OUTOFMEMORY
呼び出し元がメモリやその他のシステム リソースを使い切れている。
VSS_E_OBJECT_NOT_FOUND
指定されたボリュームが見つかりませんでした。
VSS_E_PROVIDER_VETO
プロバイダー エラー。 プロバイダーがイベント ログにエラーを記録しました。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
VSS_E_UNEXPECTED
予期しないエラー。 エラー コードは、エラー ログ ファイルに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。

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

解説

IsVolumeSupported メソッドは、現在の構成で現在のボリュームでシャドウ コピーの作成が許可されていない場合でも、特定のボリュームにシャドウ コピーを作成できる場合は TRUE を返します。

たとえば、特定のボリュームでシャドウ コピーの最大数に達した場合 (そのため、そのボリュームにシャドウ コピーを作成できない場合)、メソッドはボリュームをシャドウ コピーできることを示します。

別の VHD 内に入れ子になっている仮想ハード ディスク (VHD) に対しては、このメソッドを呼び出すことはできません。

Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: VHD はサポートされていません。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー vsprov.h
Library VssApi.lib

関連項目

IVssSoftwareSnapshotProvider