// ntddstor.h
typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
ULONG Size;
ULONG Flags;
ULONG NumFileTypeIDs;
GUID FileTypeID[ANYSIZE_ARRAY];
} DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;
View the official Windows Driver Kit DDI reference// winioctl.h
typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
DWORD Size;
DWORD Flags;
DWORD NumFileTypeIDs;
GUID FileTypeID[ANYSIZE_ARRAY];
} DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;
View the official Win32 API referenceNo description available.
The DEVICE_DSM_NOTIFICATION_PARAMETERS structure specifies the parameters for a notification operation related to the data-set attributes for a device.
SizeThe total size, in bytes, of this structure. The value of this member must include the total size, in bytes, of the FileTypeID member.
FlagsA flag that specifies the characteristics of the notification operation. The Flags member must be set to one of the following values:
| Flag | Meaning |
|---|---|
| DEVICE_DSM_NOTIFY_FLAG_BEGIN | The Logical Block Address (LBA) range is currently being used by the file types that are specified in the FileTypeID member. The LBA range is specified by the data set range within the payload of an IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES request. |
| DEVICE_DSM_NOTIFY_FLAG_END | The LBA range is no longer being used by the file types that are specified in the FileTypeID member. |
NumFileTypeIDsThe number of entries in the FileTypeID member.
FileTypeIDOne or more GUID values that specify the file type for the notification operation. The following table describes the FileTypeID GUID values.
| GUID value | Description |
|---|---|
| FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE | Specifies a notification operation for a page file. |
| FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE | Specifies a notification operation for the system hibernation file. |
| FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE | Specifies a notification operation for a system crash dump file. |
The notification is specified in the parameter block within the payload of an IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES request. See Data Set Management Overview for a general description of the payload layout.
Starting with Windows 7, the NTFS file system notifies the storage stack when the logical block addressing (LBA) data set range changes for a specified set of files. The file system issues this notification by sending the storage stack an IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES request with a system buffer that contains a DEVICE_DSM_INPUT structure. For the notification operation, the file system sets the members of the DEVICE_DSM_INPUT structure as follows:
DEVICE_DSM_ACTION Descriptions
IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES
Contains parameters for the DeviceDsmAction_Notification action for the IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code.
SizeSpecifies the total size, in bytes, of this structure. The value of this member must include the total size, in bytes, of the FileTypeIDs member.
FlagsFlags specific to the notify operation
| Value | Meaning |
|---|---|
| DEVICE_DSM_NOTIFY_FLAG_BEGIN 0x00000001 |
The ranges specified in the DEVICE_DATA_SET_RANGE structures following the DEVICE_MANAGE_DATA_SET_ATTRIBUTES structure are currently being used by the file types that are specified in the FileTypeIDs member. |
| DEVICE_DSM_NOTIFY_FLAG_END 0x00000002 |
The ranges are no longer being used by the file types that are specified in the FileTypeIDs member. |
NumFileTypeIDsThe number of entries in the FileTypeIDs member.
FileTypeIDOne or more GUID values that specify the file type for the notification operation.
| Value | Meaning |
|---|---|
| FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE 0d0a64a1-38fc-4db8-9fe7-3f4352cd7c5c |
Specifies a notification operation for a page file. |
| FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE b7624d64-b9a3-4cf8-8011-5b86c940e7b7 |
Specifies a notification operation for the system hibernation file. |
| FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE 9d453eb7-d2a6-4dbd-a2e3-fbd0ed9109a9 |
Specifies a notification operation for a system crash dump file. |
DEVICE_MANAGE_DATA_SET_ATTRIBUTES
IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES