Función AtaPortRegistryControllerKeyWrite (irb.h)
La rutina AtaPortRegistryControllerKeyWrite escribe los datos en el nombre de valor indicado en la clave HKLM\CurrentControlSet\Services\<service name>\ControllerN
del Registro , donde N es el número del controlador.
Sintaxis
BOOLEAN AtaPortRegistryControllerKeyWrite(
[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 de 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 | Cadena Unicode terminada en null. |
[in] Buffer
Puntero al búfer de origen que contiene los datos que se van a escribir en el valor 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 actualizará la longitud de los datos que se copiaron correctamente en el registro.
Valor devuelto
AtaPortRegistryControllerKeyWrite 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 debe asignarse mediante AtaPortRegistryAllocateBuffer.
El controlador de miniport debe llamar a AtaPortRegistryControllerKeyWrite durante la rutina AtaChannelInitRoutine o la rutina IdeHwControl . El controlador de minipuerto no puede llamar a AtaPortRegistryControllerKeyWrite desde cualquier otra rutina o devolverá FALSE. Además, el controlador de miniport solo puede llamar a AtaPortRegistryControllerKeyWrite 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) |