Partager via


structure DEVICE_MANAGE_DATA_SET_ATTRIBUTES (ntddstor.h)

La structure DEVICE_DSM_INPUT (ou DEVICE_MANAGE_DATA_SET_ATTRIBUTES) spécifie une action de gestion pour les attributs du jeu de données d’un appareil.

Syntaxe

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

Membres

Size

Taille de la structure DEVICE_DSM_INPUT, en octets. La valeur de ce membre change à mesure que des membres sont ajoutés à la structure.

Action

Valeur DEVICE_DSM_ACTION qui spécifie l’action à effectuer. Pour obtenir la liste des valeurs d’action et des descriptions, consultez descriptions DEVICE_DSM_ACTION.

Si l’indicateur DeviceDsmActionFlag_NonDestructive (bit le plus significatif) est défini dans Action, l’action spécifiée n’est pas destructrice. Pour les actions non destructrices, le pilote peut transférer en toute sécurité la demande IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES au pilote inférieur suivant de la pile, même si le pilote ne gère pas l’action spécifiée. Si le pilote gère le DSM, il doit effectuer le traitement normal du bloc de plages de jeux de données spécifié par les membres DataSetRangesOffset et DataSetRangesLength avant de transférer la demande IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES au pilote inférieur suivant.

Flags

Ces indicateurs sont globaux pour toutes les actions de contrôle. Ce membre peut être défini sur l’un des indicateurs suivants :

Valeur de l’indicateur Signification
DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE L’action de contrôle est spécifiée pour l’ensemble du bloc de plages de jeu de données. Si cet indicateur est défini, les membres DataSetRangesOffset et DataSetRangesLength doivent être définis sur zéro.

ParameterBlockOffset

Spécifie le début du bloc de paramètres dans la charge utile de la demande IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES . Le format du bloc de paramètres dépend de la valeur du membre Action . Pour plus d’informations sur le format de bloc de paramètres, consultez descriptions DEVICE_DSM_ACTION. Remarque : Le décalage du bloc de paramètres doit être aligné sur la limite d’adresse du paramètre correspondant.

Si ParameterBlockOffset a la valeur zéro, le bloc de paramètres n’existe pas.

ParameterBlockLength

Spécifie la longueur, en octets, du bloc de paramètres dans la charge utile de la requête IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES.

Si ParameterBlockLength a la valeur zéro, le bloc de paramètres n’existe pas.

DataSetRangesOffset

Spécifie le début du bloc de plages de jeu de données dans la charge utile de la requête IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES. Ce bloc se compose d’une ou plusieurs entrées contiguës mises en forme en tant que structures DEVICE_DSM_RANGE . Remarque : Le décalage du bloc de plage de jeu de données doit être aligné sur la limite d’adresse de la structure DEVICE_DSM_RANGE.

Si la valeur est égale à zéro, le bloc de plages de jeu de données n’existe pas.

DataSetRangesLength

Spécifie la longueur, en octets, du bloc de plages de jeu de données dans la charge utile de la requête IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES. Si DataSetRangesLength a la valeur zéro, le bloc de plages de jeux de données n’existe pas.

Remarques

Pour plus d’informations sur le format de la charge utile pour une demande de IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES , consultez Vue d’ensemble de la gestion des ensembles de données. La taille totale de la mémoire tampon doit être au moins sizeof(DEVICE_DSM_INPUT) + ParameterBlockLength + DataSetRangesLength.

Le bloc de plages de jeux de données est spécifié par les membres DataSetRangesOffset et DataSetRangesLength . Si ce bloc existe, il contient des structures DEVICE_DSM_RANGE contiguës.

Configuration requise

Condition requise Valeur
En-tête ntddstor.h (inclure Ntddstor.h)

Voir aussi

Vue d’ensemble de la gestion des ensembles de données

DEVICE_DSM_ACTION Descriptions

DEVICE_DSM_RANGE

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES