Función AtaPortRegistryChannelSubkeyWriteDeferred (irb.h)
La rutina AtaPortRegistryChannelSubKeyWriteDeferred escribe datos de forma asincrónica en el nombre de valor indicado en la clave HKLM\CurrentControlSet\Services\<service name>\ControllerN\ChannelM
del Registro, donde N es el número del controlador y M es el número del canal.
Sintaxis
BOOLEAN AtaPortRegistryChannelSubkeyWriteDeferred(
[in] PVOID ChannelExtension,
[in] UCHAR ControllerNumber,
[in] PCHAR ValueName,
[in] UCHAR ValueType,
[in] PUCHAR Buffer,
PULONG BufferLength
);
Parámetros
[in] ChannelExtension
Puntero a la extensión del canal.
[in] ControllerNumber
Contiene el número de controlador.
[in] ValueName
Contiene el nombre del valor del Registro en el que se va a escribir.
[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. |
[in] Buffer
Puntero al búfer de origen que contiene los datos que se van a escribir en el 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 escribieron correctamente en el registro.
Valor devuelto
AtaPortRegistryChannelSubKeyWriteDeferred devuelve TRUE si la operación. De lo contrario, devuelve FALSE. La rutina también devuelve FALSE si el controlador de minipuerto no lo llama de la rutina correcta.
Comentarios
Si el nombre del valor no está presente, AtaPortRegistryChannelSubKeyWriteDeferred crea una entrada para el valor y los datos se almacenan en el valor recién creado.
El búfer al que apunta Buffer debe asignarse mediante AtaPortRegistryAllocateBuffer.
El controlador de miniport puede llamar a AtaPortRegistryChannelSubKeyWriteDeferred desde cualquiera de las rutinas clave que pertenecen a su interfaz de canal.
El controlador de miniporte no debe reutilizar el búfer al que apunta Buffer después de la llamada inicial a AtaPortRegistryChannelSubKeyWriteDeferred. Dado que la llamada es asincrónica, el búfer puede seguir apuntando a los datos que no se han vaciado en el registro. El controlador de puerto vacía los datos del búfer en el registro cuando el controlador de miniporte llama a AtaPortRegistryFreeBuffer.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | irb.h (incluya Ata.h, Irb.h) |