Compartilhar via


IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS IOCTL (ehstorbandmgmt.h)

Essa solicitação IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS é enviada para recuperar a lista de faixas de um dispositivo de armazenamento em gerenciamento de banda. As informações de faixa são retornadas em uma tabela de entradas de banda que inclui o local da banda e as propriedades de segurança.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

O buffer em Irp-AssociatedIrp.SystemBuffer> deve conter uma estrutura ENUMERATE_BANDS_PARAMETERS.

Comprimento do buffer de entrada

Parameters.DeviceIoControl.InputBufferLength indica o tamanho, em bytes, do buffer, que deve ser pelo menos sizeof (ENUMERATE_BANDS_PARAMETERS).

Buffer de saída

O buffer em Irp-AssociatedIrp.SystemBuffer> contém uma estrutura BAND_TABLE seguida por entradas de banda BandTableEntryCount.

Comprimento do buffer de saída

O comprimento de uma estrutura BAND_TABLE seguida por entradas de banda BandTableEntryCount .

Bloco de status

O campo Informações contém o número de bytes retornados no buffer de saída. Um dos valores a seguir pode ser retornado no campo Status .

Valor do status Descrição
STATUS_SUCCESS Os recursos de segurança no dispositivo de armazenamento foram desativados.
STATUS_INVALID_DEVICE_REQUEST O dispositivo de armazenamento não dá suporte ao gerenciamento de banda.
STATUS_INVALID_BUFFER_SIZE O tamanho do buffer de entrada é inválido.
STATUS_INVALID_PARAMETER As informações no buffer de entrada são inválidas.
STATUS_NOT_FOUND Nenhuma faixa é configurada para os parâmetros de enumeração fornecidos.
STATUS_BUFFER_OVERFLOW Um buffer não é fornecido ou seu tamanho definido como zero. O tamanho necessário é retornado no campo Informações .
STATUS_IO_DEVICE_ERROR Falha na comunicação. O dispositivo de armazenamento pode ser incompatível com protocolos de segurança.
STATUS_BUFFER_TOO_SMALL O buffer de saída fornecido não é grande o suficiente para manter os dados de saída retornados.

Comentários

Um driver ou aplicativo pode consultar o tamanho do buffer de saída necessário definindo o buffer de saída da solicitação como NULL e o tamanho da saída como 0. A solicitação IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS retornará com o campo Status do bloco IoStatus definido como STATUS_BUFFER_OVERFLOW e o campo Informações conterá o tamanho do buffer necessário.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 8.
Cabeçalho ehstorbandmgmt.h (inclua EhStorBandMgmt.h)

Confira também

BAND_TABLE

ENUMERATE_BANDS_PARAMETERS