DEVICE_DSM_NOTIFICATION_PARAMETERS 構造体 (ntddstor.h)
DEVICE_DSM_NOTIFICATION_PARAMETERS構造体は、デバイスのデータ セット属性に関連する通知操作のパラメーターを指定します。
構文
typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
ULONG Size;
ULONG Flags;
ULONG NumFileTypeIDs;
GUID FileTypeID[ANYSIZE_ARRAY];
} DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;
メンバー
Size
この構造体の合計サイズ (バイト単位)。 このメンバーの値には、 FileTypeID メンバーの合計サイズ (バイト単位) を含める必要があります。
Flags
通知操作の特性を示す フラグ。 Flags メンバーは、次のいずれかの値に設定する必要があります。
フラグ | 説明 |
---|---|
DEVICE_DSM_NOTIFY_FLAG_BEGIN | 論理ブロック アドレス (LBA) 範囲は、 FileTypeID メンバーで指定されているファイルの種類によって現在使用されています。 LBA 範囲は、 IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES 要求のペイロード内のデータ セット範囲によって指定されます。 |
DEVICE_DSM_NOTIFY_FLAG_END | LBA 範囲は、 FileTypeID メンバーで指定されているファイルの種類によって使用されなくなりました。 |
NumFileTypeIDs
FileTypeID メンバー内のエントリの数。
FileTypeID[ANYSIZE_ARRAY]
通知操作のファイルの種類を指定する 1 つ以上の GUID 値。 次の表では、 FileTypeID GUID 値について説明します。
GUID 値 | 説明 |
---|---|
FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE | ページ ファイルの通知操作を指定します。 |
FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE | システム休止状態ファイルの通知操作を指定します。 |
FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE | システム クラッシュ ダンプ ファイルの通知操作を指定します。 |
注釈
通知は、 IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES 要求のペイロード内のパラメーター ブロックで指定されます。 ペイロード レイアウトの一般的な説明については、「 データ セット管理の概要 」を参照してください。
Windows 7 以降、NTFS ファイル システムは、指定したファイル セットに対して論理ブロック アドレッシング (LBA) データ セット範囲が変更されたときに、ストレージ スタックに通知します。 ファイル システムは、ストレージ スタックにDEVICE_DSM_INPUT構造を含むシステム バッファーを使用してIOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES要求を送信することで、この通知を発行します。 通知操作の場合、ファイル システムはDEVICE_DSM_INPUT構造体のメンバーを次のように設定します。
- Action メンバーは DeviceDsmAction_Notification に設定されます。
- ParameterBlockOffset メンバーと ParameterBlockLength メンバーは、通知操作のパラメーター ブロックの場所とサイズを指定します。 パラメーター ブロックは、DEVICE_DSM_NOTIFICATION_PARAMETERS構造体として書式設定されます。
- Flags メンバーが 0 に設定されている場合、DataSetRangesOffset メンバーと DataSetRangesLength メンバーは、IOCTL ペイロード内のデータ セット範囲ブロックを指定します。
- Flags メンバーが DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE に設定されている場合、DataSetRangesOffset メンバーと DataSetRangesLength メンバーは 0 に設定され、通知アクションには指定されたファイルのデータ セット範囲全体が含まれます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 |
サポートされている最小のサーバー | Windows Server 2008 R2 |
Header | ntddstor.h (Ntddstor.h を含む) |