Función AtaPortRegistryChannelSubkeyRead (irb.h)

La rutina AtaPortRegistryChannelSubKeyRead lee los datos asociados con el nombre de valor indicado en la clave HKLM\CurrentControlSet\Services\<service name>\ControllerN\ChannelMdel Registro , donde N es el número del controlador y M es el número del canal.

Nota Los modelos de controlador de puerto ATA y controlador de minipuerto de ATA pueden modificarse o no estar disponibles en el futuro. En su lugar, se recomienda usar los modelos del controlador Storport y del controlador storport miniport .
 

Sintaxis

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

Parámetros

[in] ChannelExtension

Puntero a la extensión de canal.

[in] ControllerNumber

Contiene el número de controlador.

[in] ValueName

Contiene el nombre del valor del Registro del que se va a leer.

[in] ValueType

Indica el tipo de datos contenidos en el valor del Registro. A este miembro se le debe asignar uno de los valores indicados en la tabla siguiente.

Valor Significado
IDE_REG_DWORD Valor numérico de 4 bytes.
IDE_REG_BINARY Datos binarios.
IDE_REG_SZ Terminado en null. Cadena Unicode.

[out, optional] Buffer

Puntero al búfer de destino donde se escribirán los datos leídos del Registro.

BufferLength

Puntero al número de bytes de datos que se van a copiar. Si se produce un error en la operación, la ubicación a la que apunta Length se actualizará a la longitud de los datos que se copiaron correctamente del registro.

Valor devuelto

AtaPortRegistryChannelSubKeyRead devuelve TRUE si la operación se realiza correctamente. De lo contrario, devuelve FALSE. La rutina también devuelve FALSE si el controlador de minipuerto no lo llama desde la rutina correcta.

Comentarios

El búfer al que apunta Buffer debe asignarse mediante AtaPortRegistryAllocateBuffer.

El controlador de minipuerto debe llamar a AtaPortRegistryChannelSubKeyRead durante la rutina AtaChannelInitRoutine o la rutina IdeHwControl o devolverá FALSE. Además, el controlador de minipuerto solo puede llamar a AtaPortRegistryChannelSubKeyRead desde su rutina IdeHwControl si se llamó a su rutina IdeHwControl y tenía un valor de StartChannel o StopChannel en su parámetro ControlAction .

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado irb.h (incluya Ata.h, Irb.h)

Consulte también

AtaChannelInitRoutine

AtaPortRegistryAllocateBuffer

AtaPortRegistryChannelSubKeyWrite

IdeHwControl