struttura DEVICE_DSM_NOTIFICATION_PARAMETERS (ntddstor.h)

La struttura DEVICE_DSM_NOTIFICATION_PARAMETERS specifica i parametri per un'operazione di notifica correlata agli attributi del set di dati per un dispositivo.

Sintassi

typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
  ULONG Size;
  ULONG Flags;
  ULONG NumFileTypeIDs;
  GUID  FileTypeID[ANYSIZE_ARRAY];
} DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;

Members

Size

Dimensione totale, in byte, di questa struttura. Il valore di questo membro deve includere le dimensioni totali, in byte, del membro FileTypeID .

Flags

Flag che specifica le caratteristiche dell'operazione di notifica. Il membro Flags deve essere impostato su uno dei valori seguenti:

Contrassegno Significato
DEVICE_DSM_NOTIFY_FLAG_BEGIN L'intervallo LBA (Logical Block Address) è attualmente utilizzato dai tipi di file specificati nel membro FileTypeID . L'intervallo LBA viene specificato dall'intervallo del set di dati all'interno del payload di una richiesta di IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES .
DEVICE_DSM_NOTIFY_FLAG_END L'intervallo LBA non viene più utilizzato dai tipi di file specificati nel membro FileTypeID .

NumFileTypeIDs

Numero di voci nel membro FileTypeID .

FileTypeID[ANYSIZE_ARRAY]

Uno o più valori GUID che specificano il tipo di file per l'operazione di notifica. Nella tabella seguente vengono descritti i valori GUID FileTypeID .

Valore GUID Descrizione
FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE Specifica un'operazione di notifica per un file di pagina.
FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE Specifica un'operazione di notifica per il file di ibernazione di sistema.
FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE Specifica un'operazione di notifica per un file di dump di arresto anomalo del sistema.

Commenti

La notifica viene specificata nel blocco di parametri all'interno del payload di una richiesta di IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES . Per una descrizione generale del layout del payload, vedere Panoramica della gestione dei set di dati .

A partire da Windows 7, il file system NTFS invia una notifica allo stack di archiviazione quando l'intervallo di set di dati LBA (Logical Block Addressing) cambia per un set specificato di file. Il file system invia questa notifica inviando allo stack di archiviazione una richiesta di IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES con un buffer di sistema che contiene una struttura DEVICE_DSM_INPUT . Per l'operazione di notifica, il file system imposta i membri della struttura DEVICE_DSM_INPUT come indicato di seguito:

  • Il membro Azione è impostato su DeviceDsmAction_Notification.
  • I membri ParameterBlockOffset e ParameterBlockLength specificano il percorso e le dimensioni del blocco di parametri per l'operazione di notifica. Il blocco di parametri viene formattato come struttura DEVICE_DSM_NOTIFICATION_PARAMETERS.
  • Se il membro Flags è impostato su zero, i membri DataSetRangesOffset e DataSetRangesLength specificano il blocco dell'intervallo di set di dati all'interno del payload IOCTL.
  • Se il membro Flags è impostato su DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE, i membri DataSetRangesOffset e DataSetRangesLength sono impostati su zero e l'azione di notifica include l'intero intervallo di set di dati per i file specificati.

Requisiti

Requisito Valore
Client minimo supportato Windows 7
Server minimo supportato Windows Server 2008 R2
Intestazione ntddstor.h (include Ntddstor.h)

Vedi anche

Panoramica della gestione dei set di dati

descrizioni DEVICE_DSM_ACTION

DEVICE_DSM_INPUT

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES