Condividi tramite


struttura DEVICE_MANAGE_DATA_SET_ATTRIBUTES (winioctl.h)

Struttura di input per il codice di controllo IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES .

Sintassi

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;

Members

Size

Dimensioni di questa struttura di dati. Il valore deve essere impostato su sizeof(DEVICE_MANAGE_DATA_SET_ATTRIBUTES).

Action

Valore valido di tipo DEVICE_DATA_MANAGEMENT_SET_ACTION.

Valore Significato
DeviceDsmAction_Trim
1
Viene eseguita un'azione di taglio. Questo valore non è supportato per le applicazioni in modalità utente.
DeviceDsmAction_Notification
2 | DeviceDsmActionFlag_NonDestructive (0x80000002)
Viene eseguita un'azione di notifica. I parametri aggiuntivi si trovano in una struttura DEVICE_DSM_NOTIFICATION_PARAMETERS . Il DeviceDsmActionFlag_NonDestructive (0x80000000) è un flag di bit per indicare allo stack di driver che questa operazione non è distruttiva.
DeviceDsmAction_OffloadRead
3 | DeviceDsmActionFlag_NonDestructive (0x80000003)
Viene eseguita un'azione di lettura offload. I parametri aggiuntivi si trovano in una struttura DEVICE_DSM_OFFLOAD_READ_PARAMETERS . Il DeviceDsmActionFlag_NonDestructive (0x80000000) è un flag di bit per indicare allo stack di driver che questa operazione non è distruttiva.

Windows 7 e Windows Server 2008 R2: Questo valore non è supportato prima di Windows 8 e Windows Server 2012.

DeviceDsmAction_OffloadWrite
4
Viene eseguita un'azione di scrittura offload. I parametri aggiuntivi si trovano in una struttura DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS .

Windows 7 e Windows Server 2008 R2: Questo valore non è supportato prima di Windows 8 e Windows Server 2012.

DeviceDsmAction_Allocation
5 | DeviceDsmActionFlag_NonDestructive (0x80000005)
Viene recuperata una bitmap di allocazione per il primo intervallo di set di dati specificato. Il DeviceDsmActionFlag_NonDestructive (0x80000000) è un flag di bit per indicare allo stack di driver che questa operazione non è distruttiva.

Windows 7 e Windows Server 2008 R2: Questo valore non è supportato prima di Windows 8 e Windows Server 2012.

DeviceDsmAction_Repair
6 | DeviceDsmActionFlag_NonDestructive (0x80000006)
Viene eseguita un'azione di ripristino. I parametri aggiuntivi si trovano in una struttura DEVICE_DATA_SET_REPAIR_PARAMETERS . Il DeviceDsmActionFlag_NonDestructive (0x80000000) è un flag di bit per indicare allo stack di driver che questa operazione non è distruttiva.

Windows 7 e Windows Server 2008 R2: Questo valore non è supportato prima di Windows 8 e Windows Server 2012.

DeviceDsmAction_Scrub
7 | DeviceDsmActionFlag_NonDestructive (0x80000007)
Viene eseguita un'azione di scrubing. Il DeviceDsmActionFlag_NonDestructive (0x80000000) è un flag di bit per indicare allo stack di driver che questa operazione non è distruttiva.

Windows 7 e Windows Server 2008 R2: Questo valore non è supportato prima di Windows 8 e Windows Server 2012.

DeviceDsmAction_Resiliency
8 | DeviceDsmActionFlag_NonDestructive (0x80000008 )
Viene eseguita un'azione di resilienza. Il DeviceDsmActionFlag_NonDestructive (0x80000000) è un flag di bit per indicare allo stack di driver che questa operazione non è distruttiva.

Windows 7 e Windows Server 2008 R2: Questo valore non è supportato prima di Windows 8 e Windows Server 2012.

Flags

Flag per le azioni.

Valore Significato
DEVICE_DSM_FLAG_TRIM_NOT_FS_ALLOCATED
0x80000000
Se impostato, gli intervalli descritti non vengono allocati da un file system. Questo flag è specifico dell'azione DeviceDsmAction_Trim .
DEVICE_DSM_FLAG_RESILIENCY_START_RESYNC
0x10000000
Avvia un'operazione di risincronizzazione nel dispositivo di archiviazione. Questo flag è specifico dell'azione DeviceDsmAction_Resiliency .
DEVICE_DSM_FLAG_RESILIENCY_START_LOAD_BALANCING
0x20000000
Avvia un'operazione di bilanciamento del carico nel dispositivo di archiviazione. Questo flag è specifico dell'azione DeviceDsmAction_Resiliency .

ParameterBlockOffset

Offset di byte all'inizio del blocco di parametri archiviato nel buffer contiguo a questa struttura. Deve essere allineato all'allineamento della struttura corrispondente. Il valore zero indica che non è presente alcun blocco di parametri e anche il membro ParameterBlockLength deve essere zero.

ParameterBlockLength

Lunghezza del blocco di parametri, in byte. Un valore pari a zero indica che non è presente alcun blocco di parametri e anche il membro ParameterBlockOffset deve essere zero.

DataSetRangesOffset

Offset di byte all'inizio del blocco di intervalli di set di dati costituito da una matrice di strutture DEVICE_DATA_SET_RANGE archiviate nel buffer contiguo a questa struttura. Deve essere allineato all'allineamento della struttura DEVICE_DATA_SET_RANGE . Un valore pari a zero indica che non è presente alcun blocco di intervalli di set di dati e anche il membro DataSetRangesLength deve essere zero.

DataSetRangesLength

Lunghezza del blocco di intervalli del set di dati, in byte. Un valore pari a zero indica che non è presente alcun blocco di intervalli di set di dati e anche il membro DataSetRangesOffset deve essere zero.

Commenti

La lunghezza totale del buffer che contiene questa struttura deve essere almeno (sizeof(DEVICE_MANAGE_DATA_SET_ATTRIBUTES) + ParameterBlockLength + DataSetRangesLength).

Requisiti

   
Client minimo supportato Windows 7
Server minimo supportato Windows Server 2008 R2
Intestazione winioctl.h (include Windows.h)

Vedi anche

DEVICE_DATA_SET_RANGE

Strutture Gestione dispositivi

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES