Функция AtaPortRegistryControllerKeyWriteDeferred (irb.h)
Подпрограмма AtaPortRegistryControllerKeyWriteDeferred асинхронно записывает данные в указанное имя значения в разделе HKLM\CurrentControlSet\Services\<service name>\ControllerN
реестра , где N — номер контроллера.
Синтаксис
BOOLEAN AtaPortRegistryControllerKeyWriteDeferred(
[in] PVOID ChannelExtension,
[in] UCHAR ControllerNumber,
[in] PCHAR ValueName,
[in] UCHAR ValueType,
[in] PUCHAR Buffer,
PULONG BufferLength
);
Параметры
[in] ChannelExtension
Указатель на расширение канала.
[in] ControllerNumber
Содержит номер контроллера.
[in] ValueName
Содержит имя значения реестра для записи.
[in] ValueType
Указывает тип данных, содержащихся в значении реестра. Этому элементу следует присвоить одно из значений, указанных в следующей таблице.
Значение | Значение |
---|---|
IDE_REG_DWORD | 4-байтовое числовое значение. |
IDE_REG_BINARY | Двоичные данные. |
IDE_REG_SZ | Строка Юникода, завершающаяся null. |
[in] Buffer
Указатель на исходный буфер, содержащий данные для записи в значение реестра.
BufferLength
Указатель на количество байтов данных для копирования. Если операция завершится сбоем, расположение, указанное параметром Length , изменится на длину данных, которые были успешно скопированы в реестр.
Возвращаемое значение
AtaPortRegistryControllerKeyWriteDeferred возвращает значение TRUE , если операция выполнена успешно. В противном случае возвращается значение FALSE. Подпрограмма также возвращает значение FALSE , если драйвер мини-порта не вызывает ее из правильной подпрограммы.
Комментарии
Если имя значения отсутствует, подпрограмма AtaPortRegistryControllerKeyWriteDeferred создает запись для имени значения и сохраняет входные данные в только что созданном имени значения.
Драйвер мини-порта может вызывать подпрограмму AtaPortRegistryControllerKeyWriteDeferred из любой подпрограммы, определенной в интерфейсе канала.
Буфер, на который указывает buffer , должен быть выделен с помощью AtaPortRegistryAllocateBuffer. Драйвер мини-порта не должен повторно использовать этот буфер после вызова AtaPortRegistryControllerKeyWriteDeferred , так как драйвер порта задерживает запись данных ключа. Если драйвер мини-порта повторно использует буфер, он может перезаписать данные в буфере, прежде чем драйвер порта сможет сохранить их в разделе реестра. Драйвер порта очищает буфер, когда драйвер минипорта вызывает AtaPortRegistryFreeBuffer для освобождения буфера.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | irb.h (включая Ata.h, Irb.h) |