Compartilhar via


Função AtaPortRegistryChannelSubkeyWriteDeferred (irb.h)

A rotina AtaPortRegistryChannelSubKeyWriteDeferred grava dados de forma assíncrona no nome do valor indicado no HKLM\CurrentControlSet\Services\<service name>\ControllerN\ChannelMde chave do Registro, em que N é o número do controlador e M é o número do canal.

Observação o driver de porta do ATA e os modelos de driver de miniporto do ATA podem estar alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar o de driver do Storport e miniporto storport modelos de driver.
 

Sintaxe

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

Parâmetros

[in] ChannelExtension

Um ponteiro para a extensão do canal.

[in] ControllerNumber

Contém o número do controlador.

[in] ValueName

Contém o nome do valor do Registro para o qual gravar.

[in] ValueType

Indica o tipo de dados contido no valor do Registro. Esse membro deve receber um dos valores indicados na tabela a seguir.

Valor Significado
IDE_REG_DWORD Um valor numérico de 4 bytes.
IDE_REG_BINARY Dados binários.
IDE_REG_SZ Uma terminação nula. Cadeia de caracteres Unicode.

[in] Buffer

Ponteiro para o buffer de origem que contém os dados a serem gravados no Registro.

BufferLength

Um ponteiro para o número de bytes de dados a serem copiados. Se a operação falhar, o local apontado pelo Length será atualizado para o comprimento dos dados que foram gravados com êxito no registro.

Valor de retorno

AtaPortRegistryChannelSubKeyWriteDeferred retornará verdadeiro se a operação. Caso contrário, ele retornará FALSE. A rotina também retornará FALSE se o driver de miniporto não chamá-lo da rotina correta.

Observações

Se o nome do valor não estiver presente, AtaPortRegistryChannelSubKeyWriteDeferred criará uma entrada para o valor e os dados serão armazenados no valor recém-criado.

O buffer apontado pelo Buffer deve ser alocado usando AtaPortRegistryAllocateBuffer.

O driver de miniporto pode chamar AtaPortRegistryChannelSubKeyWriteDeferred de qualquer uma das principais rotinas que pertencem à interface do canal.

O driver de miniporto não deve reutilizar o buffer apontado por buffer após a chamada inicial para AtaPortRegistryChannelSubKeyWriteDeferred. Como a chamada é assíncrona, buffer ainda pode apontar para dados que não foram liberados para o registro. O driver de porta libera os dados no buffer para o registro quando o driver de miniporto chama AtaPortRegistryFreeBuffer.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho irb.h (include Ata.h, Irb.h)

Consulte também

AtaPortRegistryAllocateBuffer

AtaPortRegistryFreeBuffer