Win32 API 日本語リファレンス
ホームStorage.VirtualDiskService › VDS_DRIVE_STATUS

VDS_DRIVE_STATUS

列挙型
基底型i4

メンバー 6

名前10進16進説明
VDS_DRS_UNKNOWN00x0ドライブの状態を特定できません。
VDS_DRS_ONLINE10x1ドライブは使用可能であり、使用中です。このドライブ状態に関連付けられる VDS_HEALTH の値は、VDS_H_FAILED 以外の任意の値になります。
VDS_DRS_NOT_READY20x2ドライブはビジー状態です。VDS_HEALTH の値は、VDS_H_FAILED 以外の任意の値になります。
VDS_DRS_OFFLINE40x4

ドライブは物理的に存在していますが、その RAID グループまたは記憶域プールから削除されています。たとえば、ドライブが障害のために RAID グループから削除された場合、ドライブの状態は VDS_DRS_FAILED になります。記憶域の再配分の一環としてドライブが削除された場合、ドライブの状態は VDS_DRS_OFFLINE になります。

このドライブ状態が設定されると、VDS_NF_DRIVE_REMOVED 通知が送信されます。

VDS_HEALTH の値は任意の値になります。

VDS_DRS_FAILED50x5ドライブで障害が発生しました。VDS_HEALTH の値は VDS_H_FAILED または VDS_H_FAILING になります。
VDS_DRS_REMOVED80x8

ドライブがサブシステムから物理的に取り外されています。この状態が設定されると、VDS_NF_DRIVE_DEPART 通知が送信されます。

Windows Server 2008、Windows Vista および Windows Server 2003: この値はサポートされていません。

公式ドキュメント

[Windows 8 および Windows Server 2012 以降、Virtual Disk Service COM インターフェイスは Windows Storage Management API に置き換えられています。]

ドライブのオブジェクト状態値のセットを定義します。

解説(Remarks)

IVdsDrive::SetStatus メソッドは、ドライブの状態を設定するために VDS_DRIVE_STATUS 値を引数として渡します。また、VDS_DRIVE_PROP 構造体には、現在の状態を示す VDS_DRIVE_STATUS 値がメンバーとして含まれます。

アプリケーションが認識できない VDS_DRIVE_STATUS 値を検出した場合は、ドライブの状態を不明として表示してください。認識できないドライブ状態を別のドライブ状態に対応付けようとしてはなりません。

メモ 将来の Windows バージョンでは、VDS_DRIVE_STATUS 列挙型に定数が追加される可能性があります。このため、アプリケーションは認識できない VDS_DRIVE_STATUS 列挙定数を適切に処理できるように設計する必要があります。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum VDS_DRIVE_STATUS : int {
    VDS_DRS_UNKNOWN = 0,
    VDS_DRS_ONLINE = 1,
    VDS_DRS_NOT_READY = 2,
    VDS_DRS_OFFLINE = 4,
    VDS_DRS_FAILED = 5,
    VDS_DRS_REMOVED = 8
} VDS_DRIVE_STATUS;
public enum VDS_DRIVE_STATUS : int
{
    VDS_DRS_UNKNOWN = 0,
    VDS_DRS_ONLINE = 1,
    VDS_DRS_NOT_READY = 2,
    VDS_DRS_OFFLINE = 4,
    VDS_DRS_FAILED = 5,
    VDS_DRS_REMOVED = 8,
}
Public Enum VDS_DRIVE_STATUS As Integer
    VDS_DRS_UNKNOWN = 0
    VDS_DRS_ONLINE = 1
    VDS_DRS_NOT_READY = 2
    VDS_DRS_OFFLINE = 4
    VDS_DRS_FAILED = 5
    VDS_DRS_REMOVED = 8
End Enum
import enum

class VDS_DRIVE_STATUS(enum.IntEnum):
    VDS_DRS_UNKNOWN = 0
    VDS_DRS_ONLINE = 1
    VDS_DRS_NOT_READY = 2
    VDS_DRS_OFFLINE = 4
    VDS_DRS_FAILED = 5
    VDS_DRS_REMOVED = 8
// VDS_DRIVE_STATUS
pub const VDS_DRS_UNKNOWN: i32 = 0;
pub const VDS_DRS_ONLINE: i32 = 1;
pub const VDS_DRS_NOT_READY: i32 = 2;
pub const VDS_DRS_OFFLINE: i32 = 4;
pub const VDS_DRS_FAILED: i32 = 5;
pub const VDS_DRS_REMOVED: i32 = 8;
// VDS_DRIVE_STATUS
const (
	VDS_DRS_UNKNOWN int32 = 0
	VDS_DRS_ONLINE int32 = 1
	VDS_DRS_NOT_READY int32 = 2
	VDS_DRS_OFFLINE int32 = 4
	VDS_DRS_FAILED int32 = 5
	VDS_DRS_REMOVED int32 = 8
)
const
  VDS_DRS_UNKNOWN = 0;
  VDS_DRS_ONLINE = 1;
  VDS_DRS_NOT_READY = 2;
  VDS_DRS_OFFLINE = 4;
  VDS_DRS_FAILED = 5;
  VDS_DRS_REMOVED = 8;
// VDS_DRIVE_STATUS
pub const VDS_DRS_UNKNOWN: i32 = 0;
pub const VDS_DRS_ONLINE: i32 = 1;
pub const VDS_DRS_NOT_READY: i32 = 2;
pub const VDS_DRS_OFFLINE: i32 = 4;
pub const VDS_DRS_FAILED: i32 = 5;
pub const VDS_DRS_REMOVED: i32 = 8;
const
  VDS_DRS_UNKNOWN* = 0
  VDS_DRS_ONLINE* = 1
  VDS_DRS_NOT_READY* = 2
  VDS_DRS_OFFLINE* = 4
  VDS_DRS_FAILED* = 5
  VDS_DRS_REMOVED* = 8
enum VDS_DRIVE_STATUS : int {
    VDS_DRS_UNKNOWN = 0,
    VDS_DRS_ONLINE = 1,
    VDS_DRS_NOT_READY = 2,
    VDS_DRS_OFFLINE = 4,
    VDS_DRS_FAILED = 5,
    VDS_DRS_REMOVED = 8,
}
#define global VDS_DRS_UNKNOWN   0x0
#define global VDS_DRS_ONLINE    0x1
#define global VDS_DRS_NOT_READY 0x2
#define global VDS_DRS_OFFLINE   0x4
#define global VDS_DRS_FAILED    0x5
#define global VDS_DRS_REMOVED   0x8