estrutura STORAGE_DEVICE_DESCRIPTOR (winioctl.h)

Usado em conjunto com o código de controle IOCTL_STORAGE_QUERY_PROPERTY para recuperar os dados do descritor de alinhamento do dispositivo de armazenamento para um dispositivo.

Sintaxe

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;

Membros

Version

Contém o tamanho dessa estrutura, em bytes. O valor desse membro será alterado à medida que os membros forem adicionados à estrutura.

Size

Especifica o tamanho total do descritor, em bytes, que pode incluir ID do fornecedor, ID do produto, revisão de produto, cadeias de caracteres de número de série do dispositivo e dados específicos do barramento que são acrescentados à estrutura.

DeviceType

Especifica o tipo de dispositivo conforme definido pela especificação SCSI (Small Computer Systems Interface).

DeviceTypeModifier

Especifica o modificador de tipo de dispositivo, se houver, conforme definido pela especificação SCSI. Se nenhum modificador de tipo de dispositivo existir, esse membro será zero.

RemovableMedia

Indica quando TRUE a mídia do dispositivo (se houver) é removível. Se o dispositivo não tiver mídia, esse membro deverá ser ignorado. Quando FALSE , a mídia do dispositivo não é removível.

CommandQueueing

Indica quando TRUE o dispositivo dá suporte a vários comandos pendentes (enfileiramento marcado por SCSI ou equivalente). Quando FALSE, o dispositivo não dá suporte à fila marcada por SCSI nem ao equivalente.

VendorIdOffset

Especifica o deslocamento de bytes do início da estrutura para uma cadeia de caracteres ASCII terminada em nulo que contém a ID do fornecedor do dispositivo. Se o dispositivo não tiver nenhuma ID de fornecedor, esse membro será zero.

ProductIdOffset

Especifica o deslocamento de bytes do início da estrutura para uma cadeia de caracteres ASCII terminada em nulo que contém a ID do produto do dispositivo. Se o dispositivo não tiver nenhuma ID do produto, esse membro será zero.

ProductRevisionOffset

Especifica o deslocamento de bytes do início da estrutura para uma cadeia de caracteres ASCII terminada em nulo que contém a cadeia de caracteres de revisão de produto do dispositivo. Se o dispositivo não tiver nenhuma cadeia de caracteres de revisão do produto, esse membro será zero.

SerialNumberOffset

Especifica o deslocamento de bytes do início da estrutura para uma cadeia de caracteres ASCII terminada em nulo que contém o número de série do dispositivo. Se o dispositivo não tiver nenhum número de série, esse membro será zero.

BusType

Especifica um valor enumerador do tipo STORAGE_BUS_TYPE que indica o tipo de barramento ao qual o dispositivo está conectado. Isso deve ser usado para interpretar as propriedades do dispositivo bruto no final dessa estrutura (se houver).

RawPropertiesLength

Indica o número de bytes de dados específicos do barramento que foram acrescentados a esse descritor.

RawDeviceProperties[1]

Contém uma matriz de comprimento que serve como um espaço reservado para o primeiro byte dos dados de propriedade específicos do barramento.

Comentários

Um aplicativo pode determinar o tamanho do buffer necessário emitindo um código de controle IOCTL_STORAGE_QUERY_PROPERTY passando uma estrutura STORAGE_DESCRIPTOR_HEADER para o buffer de saída e, em seguida, usando o membro Size retornado da estrutura STORAGE_DESCRIPTOR_HEADER para alocar um buffer do tamanho adequado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho winioctl.h (inclua Windows.h)

Confira também

Estruturas do gerenciamento de disco

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_ADAPTER_DESCRIPTOR

STORAGE_DESCRIPTOR_HEADER

STORAGE_DEVICE_DESCRIPTOR

STORAGE_DEVICE_ID_DESCRIPTOR