Partilhar via


Função AtaPortRegistryControllerKeyRead (irb.h)

A rotina AtaPortRegistryControllerKeyRead lê os dados associados ao nome do valor indicado na chave HKLM\CurrentControlSet\Services\<service name>\ControllerNdo Registro , em que N é o número do controlador.

Nota Os modelos de driver de porta do ATA e do driver de miniporto do ATA podem ser alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar os modelos de driver do Storport e do driver de miniporto storport .
 

Sintaxe

BOOLEAN AtaPortRegistryControllerKeyRead(
  [in]            PVOID  ChannelExtension,
  [in]            UCHAR  ControllerNumber,
  [in]            PCHAR  ValueName,
  [in]            UCHAR  ValueType,
  [out, optional] PUCHAR Buffer,
                  PULONG BufferLength
);

Parâmetros

[in] ChannelExtension

Um ponteiro para a extensão de canal.

[in] ControllerNumber

Contém o número do controlador.

[in] ValueName

Contém o nome do valor do Registro a ser lido.

[in] ValueType

Indica o tipo dos dados contidos no valor do Registro. Esse parâmetro deve ser atribuído a um dos valores indicados na tabela a seguir.

Tipo de valor Significado
IDE_REG_DWORD Um valor numérico de 4 bytes.
IDE_REG_BINARY Dados binários.
IDE_REG_SZ Uma cadeia de caracteres Unicode terminada em nulo.

[out, optional] Buffer

Um ponteiro para o buffer em que os resultados devem ser copiados.

BufferLength

Um ponteiro para o número de bytes de dados a serem copiados. Se a operação falhar devido a um buffer insuficiente, o local apontado por Length será atualizado para o comprimento real dos dados no registro.

Retornar valor

AtaPortRegistryControllerKeyRead retornaráTRUE se a operação for bem-sucedida. Caso contrário, retornará FALSE. A rotina AtaPortRegistryControllerKeyRead também retornará FALSE se o driver de miniporto não chamá-lo da rotina correta.

Comentários

O buffer no Buffer deve ser alocado usando AtaPortRegistryAllocateBuffer.

O driver de miniporte deve chamar AtaPortRegistryControllerKeyRead em sua rotina AtaChannelInitRoutine ou em sua rotina IdeHwControl . Ele não pode chamar AtaPortRegistryControllerKeyRead de qualquer outra rotina. Além disso, o driver de miniporto só pode chamar AtaPortRegistryControllerKeyRead de sua rotina IdeHwControl se sua rotina IdeHwControl foi chamada e tinha um valor de StartChannel ou StopChannel em seu parâmetro ControlAction .

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho irb.h (inclua Ata.h, Irb.h)

Confira também

AtaChannelInitRoutine

AtaPortRegistryAllocateBuffer

IdeHwControl