次の方法で共有


IVssDifferentialSoftwareSnapshotMgmt3::GetVolumeProtectLevel メソッド (vsmgmt.h)

指定したボリュームのシャドウ コピー保護レベルと状態を取得します。

構文

HRESULT GetVolumeProtectLevel(
  [in]  VSS_PWSZ                   pwszVolumeName,
  [out] VSS_VOLUME_PROTECTION_INFO *protectionLevel
);

パラメーター

[in] pwszVolumeName

ボリュームの名前。 このパラメーターは必須であり、 NULL にすることはできません。

名前は次のいずれかの形式にする必要があり、末尾に円記号 (\) を含める必要があります。

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

[out] protectionLevel

ボリュームのシャドウ コピー保護レベルに関する情報を含む VSS_VOLUME_PROTECTION_INFO 構造体を受け取る呼び出し元割り当てバッファーのアドレス。

戻り値

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

意味
S_OK
シャドウ コピー保護レベルが正常に照会されました。
E_ACCESSDENIED
0x80070005L
呼び出し元は管理者ではありません。
E_INVALIDARG
0x80070057L
パラメーター値の 1 つが無効です。
E_NOTIMPL
0x80000001L
ボリュームのプロバイダーは、シャドウ コピー保護をサポートしていません。
VSS_E_PROVIDER_VETO
0x80042306L
予想されるプロバイダー エラーが発生しました。 エラー コードはイベント ログに記録されます。 詳細については、「 VSS でのイベントとエラーの処理」を参照してください。
VSS_E_OBJECT_NOT_FOUND
0x80042308L
指定されたボリュームが見つかりませんでした。

注釈

GetVolumeProtectLevel メソッドは、ボリュームの現在の保護レベルに関する情報を取得します。 ボリュームが障害状態の場合、VSS_VOLUME_PROTECTION_INFO構造体のm_protectionFault メンバーには現在の保護エラーが含まれており、m_failureStatus メンバーにはボリュームが障害状態である理由が含まれます。 ボリュームが障害状態でない場合、 m_protectionFault メンバーと m_failureStatus メンバーは 0 になります。

protectionLevel パラメーターの値がVSS_PROTECTION_LEVEL_SNAPSHOTの場合、要求者は IVssDifferentialSoftwareSnapshotMgmt::AddDiffArea メソッドを使用してシャドウ コピー記憶域 (diff領域) の関連付けを設定する必要があります。

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー vsmgmt.h

こちらもご覧ください

IVssDifferentialSoftwareSnapshotMgmt3

IVssDifferentialSoftwareSnapshotMgmt3::SetVolumeProtectLevel