Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Подпрограмма 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
Указатель на количество байтов данных для копирования. Если операция завершается ошибкой, расположение, на которое указывает длина будет обновляться до длины данных, успешно скопированных в реестр.
Возвращаемое значение
AtaPortRegistryControllerKeyWriteDeferred возвращает TRUE, если операция завершится успешно. В противном случае возвращается FALSE. Подпрограмма также возвращает FALSE, если драйвер мини-порта не вызывает его из правильной подпрограммы.
Замечания
Если имя значения отсутствует, программа AtaPortRegistryControllerKeyWriteDeferred создает запись для имени значения и сохраняет входные данные под новым именем значения.
Драйвер минипорта может вызывать подпрограмму AtaPortRegistryControllerKeyWriteDeferred из любого из подпрограмм, определенных в интерфейсе канала.
Буфер, на который указывает буфер , необходимо выделить с помощью AtaPortRegistryAllocateBuffer. Драйвер минипорта не должен повторно использовать этот буфер после вызова AtaPortRegistryControllerKeyWriteDeferred, так как драйвер порта задерживает запись ключевых данных. Если драйвер минипорта повторно использует буфер, он может перезаписать данные в буфере, прежде чем драйвер порта имеет возможность сохранить его в разделе реестра. Драйвер порта сбрасывает буфер, когда драйвер минипорта вызывает AtaPortRegistryFreeBuffer, чтобы освободить буфер.
Требования
| Требование | Ценность |
|---|---|
| целевая платформа | Настольный |
| заголовка | irb.h (include Ata.h, Irb.h) |