DEVICE_MANAGE_DATA_SET_ATTRIBUTES 構造体 (winioctl.h)

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTESコントロール コードの入力構造。

構文

typedef struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES {
  DWORD             Size;
  DEVICE_DSM_ACTION Action;
  DWORD             Flags;
  DWORD             ParameterBlockOffset;
  DWORD             ParameterBlockLength;
  DWORD             DataSetRangesOffset;
  DWORD             DataSetRangesLength;
} DEVICE_MANAGE_DATA_SET_ATTRIBUTES, *PDEVICE_MANAGE_DATA_SET_ATTRIBUTES, DEVICE_DSM_INPUT, *PDEVICE_DSM_INPUT;

メンバー

Size

このデータ構造のサイズ。 sizeof(DEVICE_MANAGE_DATA_SET_ATTRIBUTES) に設定する必要があります。

Action

DEVICE_DATA_MANAGEMENT_SET_ACTION型の有効な値。

説明
DeviceDsmAction_Trim
1
トリミング アクションが実行されます。 この値は、ユーザー モード アプリケーションではサポートされていません。
DeviceDsmAction_Notification
2 | DeviceDsmActionFlag_NonDestructive (0x80000002)
通知アクションが実行されます。 追加のパラメーターは、 DEVICE_DSM_NOTIFICATION_PARAMETERS 構造体にあります。 DeviceDsmActionFlag_NonDestructive (0x80000000) は、この操作が非破壊的であることをドライバー スタックに示すビット フラグです。
DeviceDsmAction_OffloadRead
3 | DeviceDsmActionFlag_NonDestructive (0x80000003)
オフロード読み取りアクションが実行されます。 追加のパラメーターは 、DEVICE_DSM_OFFLOAD_READ_PARAMETERS 構造体にあります。 DeviceDsmActionFlag_NonDestructive (0x80000000) は、この操作が非破壊的であることをドライバー スタックに示すビット フラグです。

Windows 7 と Windows Server 2008 R2: この値は、Windows 8 および Windows Server 2012 より前はサポートされていません。

DeviceDsmAction_OffloadWrite
4
オフロード書き込みアクションが実行されます。 追加のパラメーターは 、DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS 構造体にあります。

Windows 7 と Windows Server 2008 R2: この値は、Windows 8 および Windows Server 2012 より前はサポートされていません。

DeviceDsmAction_Allocation
5 | DeviceDsmActionFlag_NonDestructive (0x80000005)
割り当てビットマップは、指定された最初のデータ セット範囲に対して取得されます。 DeviceDsmActionFlag_NonDestructive (0x80000000) は、この操作が非破壊的であることをドライバー スタックに示すビット フラグです。

Windows 7 と Windows Server 2008 R2: この値は、Windows 8 および Windows Server 2012 より前はサポートされていません。

DeviceDsmAction_Repair
6 | DeviceDsmActionFlag_NonDestructive (0x80000006)
修復アクションが実行されます。 追加のパラメーターは 、DEVICE_DATA_SET_REPAIR_PARAMETERS 構造体にあります。 DeviceDsmActionFlag_NonDestructive (0x80000000) は、この操作が非破壊的であることをドライバー スタックに示すビット フラグです。

Windows 7 と Windows Server 2008 R2: この値は、Windows 8 および Windows Server 2012 より前はサポートされていません。

DeviceDsmAction_Scrub
7 | DeviceDsmActionFlag_NonDestructive (0x80000007)
スクラブ アクションが実行されます。 DeviceDsmActionFlag_NonDestructive (0x80000000) は、この操作が非破壊的であることをドライバー スタックに示すビット フラグです。

Windows 7 と Windows Server 2008 R2: この値は、Windows 8 および Windows Server 2012 より前はサポートされていません。

DeviceDsmAction_Resiliency
8 | DeviceDsmActionFlag_NonDestructive (0x80000008)
回復性アクションが実行されます。 DeviceDsmActionFlag_NonDestructive (0x80000000) は、この操作が非破壊的であることをドライバー スタックに示すビット フラグです。

Windows 7 と Windows Server 2008 R2: この値は、Windows 8 および Windows Server 2012 より前はサポートされていません。

Flags

アクションのフラグ。

説明
DEVICE_DSM_FLAG_TRIM_NOT_FS_ALLOCATED
0x80000000
設定した場合、記述された範囲はファイル・システムによって割り振られるわけではありません。 このフラグは、 DeviceDsmAction_Trim アクションに固有です。
DEVICE_DSM_FLAG_RESILIENCY_START_RESYNC
0x10000000
ストレージ デバイスで再同期操作を開始します。 このフラグは、 DeviceDsmAction_Resiliency アクションに固有です。
DEVICE_DSM_FLAG_RESILIENCY_START_LOAD_BALANCING
0x20000000
ストレージ デバイスで負荷分散操作を開始します。 このフラグは、 DeviceDsmAction_Resiliency アクションに固有です。

ParameterBlockOffset

この構造体に隣接するバッファーに格納されているパラメーター ブロックの先頭へのバイト オフセット。 対応する構造体の配置に合わせて配置する必要があります。 値 0 は、パラメーター ブロックがないことを示し、 ParameterBlockLength メンバーも 0 である必要があります。

ParameterBlockLength

パラメーター ブロックの長さ (バイト単位)。 値 0 は、パラメーター ブロックがないことを示し、 ParameterBlockOffset メンバーも 0 である必要があります。

DataSetRangesOffset

この構造体に隣接するバッファーに格納されている DEVICE_DATA_SET_RANGE 構造体の配列で構成されるデータ セット範囲ブロックの先頭へのバイト オフセット。 DEVICE_DATA_SET_RANGE構造体の配置に揃える必要があります。 値 0 は、データ セット範囲ブロックがないことを示し、 DataSetRangesLength メンバーも 0 である必要があります。

DataSetRangesLength

データ セット範囲ブロックの長さ (バイト単位)。 値が 0 の場合は、データ セット範囲ブロックがなく、 DataSetRangesOffset メンバーも 0 である必要があることを示します。

解説

この構造体を含むバッファーの合計長は、少なくとも (sizeof(DEVICE_MANAGE_DATA_SET_ATTRIBUTES) + ParameterBlockLength + DataSetRangesLength)である必要があります。

要件

   
サポートされている最小のクライアント Windows 7
サポートされている最小のサーバー Windows Server 2008 R2
Header winioctl.h (Windows.h を含む)

関連項目

DEVICE_DATA_SET_RANGE

デバイス管理構造体

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES