Función AtaPortRegistryAllocateBuffer (irb.h)

La rutina AtaPortRegistryAllocateBuffer asigna un búfer para las operaciones del Registro.

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 el controlador Storport y los modelos de controlador de miniport storport .
 

Sintaxis

PVOID AtaPortRegistryAllocateBuffer(
  [in] PVOID ChannelExtension,
       ULONG BufferSize
);

Parámetros

[in] ChannelExtension

Puntero a la extensión del canal.

BufferSize

Especifica la longitud del búfer, en bytes.

Valor devuelto

AtaPortRegistryAllocateBuffer devuelve un puntero al búfer asignado cuando se realiza correctamente. De lo contrario, devuelve NULL.

Comentarios

El controlador de puerto permite al controlador de miniportar asignar un búfer para todas sus operaciones del Registro. Una vez que el controlador de miniporte haya asignado un búfer con AtaPortRegistryAllocateBuffer, las llamadas posteriores a AtaPortRegistryAllocateBuffer producirán un error y devolverán NULL. Una vez que el controlador de miniporte libera el búfer asignado con una llamada a la rutina AtaPortRegistryFreeBuffer , puede volver a asignar búferes llamando a AtaPortRegistryAllocateBuffer.

El controlador de miniport debe llamar a AtaPortRegistryAllocateBuffer en su rutina AtaChannelInitRoutine o en su rutina IdeHwControl . No puede llamar a AtaPortRegistryAllocateBuffer desde cualquier otra rutina. Además, el controlador de minipuerto solo puede llamar a AtaPortRegistryAllocateBuffer 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)
Library Ataport.lib; Pciidex.lib

Consulte también

AtaChannelInitRoutine

AtaPortRegistryFreeBuffer

IdeHwControl