estructura STORAGE_DEVICE_DESCRIPTOR (winioctl.h)

Se usa junto con el código de control IOCTL_STORAGE_QUERY_PROPERTY para recuperar los datos del descriptor del dispositivo de almacenamiento para un dispositivo.

Sintaxis

typedef struct _STORAGE_DEVICE_DESCRIPTOR {
  DWORD            Version;
  DWORD            Size;
  BYTE             DeviceType;
  BYTE             DeviceTypeModifier;
  BOOLEAN          RemovableMedia;
  BOOLEAN          CommandQueueing;
  DWORD            VendorIdOffset;
  DWORD            ProductIdOffset;
  DWORD            ProductRevisionOffset;
  DWORD            SerialNumberOffset;
  STORAGE_BUS_TYPE BusType;
  DWORD            RawPropertiesLength;
  BYTE             RawDeviceProperties[1];
} STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;

Miembros

Version

Contiene el tamaño de esta estructura, en bytes. El valor de este miembro cambiará a medida que se agreguen miembros a la estructura.

Size

Especifica el tamaño total del descriptor, en bytes, que puede incluir el identificador del proveedor, el identificador de producto, la revisión del producto, las cadenas de números de serie del dispositivo y los datos específicos del bus que se anexan a la estructura.

DeviceType

Especifica el tipo de dispositivo tal y como se define en la especificación small Computer Systems Interface (SCSI).

DeviceTypeModifier

Especifica el modificador de tipo de dispositivo, si existe, tal como se define en la especificación SCSI. Si no existe ningún modificador de tipo de dispositivo, este miembro es cero.

RemovableMedia

Indica si es TRUE que el medio del dispositivo (si existe) es extraíble. Si el dispositivo no tiene ningún medio, se debe omitir este miembro. Cuando false , el medio del dispositivo no es extraíble.

CommandQueueing

Indica si es TRUE que el dispositivo admite varios comandos pendientes (cola etiquetada SCSI o equivalente). Si es FALSE, el dispositivo no admite la puesta en cola etiquetada por SCSI ni el equivalente.

VendorIdOffset

Especifica el desplazamiento de bytes desde el principio de la estructura a una cadena ASCII terminada en null que contiene el identificador de proveedor del dispositivo. Si el dispositivo no tiene ningún identificador de proveedor, este miembro es cero.

ProductIdOffset

Especifica el desplazamiento de bytes desde el principio de la estructura a una cadena ASCII terminada en null que contiene el identificador de producto del dispositivo. Si el dispositivo no tiene ningún identificador de producto, este miembro es cero.

ProductRevisionOffset

Especifica el desplazamiento de bytes desde el principio de la estructura a una cadena ASCII terminada en null que contiene la cadena de revisión del producto del dispositivo. Si el dispositivo no tiene ninguna cadena de revisión del producto, este miembro es cero.

SerialNumberOffset

Especifica el desplazamiento de bytes desde el principio de la estructura a una cadena ASCII terminada en null que contiene el número de serie del dispositivo. Si el dispositivo no tiene ningún número de serie, este miembro es cero.

BusType

Especifica un valor de enumerador de tipo STORAGE_BUS_TYPE que indica el tipo de bus al que está conectado el dispositivo. Este elemento debe usarse para interpretar las propiedades sin procesar del dispositivo al final de esta estructura (si hubiera alguna).

RawPropertiesLength

Indica el número de bytes de datos específicos del bus que se han anexado a este descriptor.

RawDeviceProperties[1]

Contiene una matriz de longitud que actúa como marcador de posición para el primer byte de los datos de propiedad específicos del bus.

Comentarios

Una aplicación puede determinar el tamaño de búfer necesario mediante la emisión de un código de control IOCTL_STORAGE_QUERY_PROPERTY que pasa una estructura de STORAGE_DESCRIPTOR_HEADER para el búfer de salida y, a continuación, usa el miembro Size devuelto de la estructura STORAGE_DESCRIPTOR_HEADER para asignar un búfer del tamaño adecuado.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado winioctl.h (incluya Windows.h)

Consulte también

Estructuras de administración de discos

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_ADAPTER_DESCRIPTOR

STORAGE_DESCRIPTOR_HEADER

STORAGE_DEVICE_DESCRIPTOR

STORAGE_DEVICE_ID_DESCRIPTOR