Funzione AtaPortRegistryChannelSubkeyWriteDeferred (irb.h)
La routine AtaPortRegistryChannelSubKeyWriteDeferred scrive i dati in modo asincrono nel nome di valore indicato nella chiave del Registro di sistema HKLM\CurrentControlSet\Services\<service name>\ControllerN\ChannelM
, dove N è il numero del controller e M è il numero del canale.
Sintassi
BOOLEAN AtaPortRegistryChannelSubkeyWriteDeferred(
[in] PVOID ChannelExtension,
[in] UCHAR ControllerNumber,
[in] PCHAR ValueName,
[in] UCHAR ValueType,
[in] PUCHAR Buffer,
PULONG BufferLength
);
Parametri
[in] ChannelExtension
Puntatore all'estensione del canale.
[in] ControllerNumber
Contiene il numero del controller.
[in] ValueName
Contiene il nome del valore del Registro di sistema in cui scrivere.
[in] ValueType
Indica il tipo di dati contenuti nel valore del Registro di sistema. A questo membro deve essere assegnato uno dei valori indicati nella tabella seguente.
Valore | Significato |
---|---|
IDE_REG_DWORD | Valore numerico a 4 byte. |
IDE_REG_BINARY | Dati binari. |
IDE_REG_SZ | Terminazione Null. Stringa Unicode. |
[in] Buffer
Puntatore al buffer di origine che contiene i dati da scrivere nel Registro di sistema.
BufferLength
Puntatore al numero di byte di dati da copiare. Se l'operazione non riesce, il percorso a cui punta Lunghezza verrà aggiornato alla lunghezza dei dati scritti correttamente nel Registro di sistema.
Valore restituito
AtaPortRegistryChannelSubKeyWriteDeferred restituisce true se l'operazione. In caso contrario, restituisce FALSE. La routine restituisce anche FALSE se il driver miniport non lo chiama dalla routine corretta.
Osservazioni
Se il nome del valore non è presente, AtaPortRegistryChannelSubKeyWriteDeferred crea una voce per il valore e i dati vengono archiviati nel valore appena creato.
Il buffer a cui punta buffer deve essere allocato usando AtaPortRegistryAllocateBuffer.
Il driver miniport può chiamare AtaPortRegistryChannelSubKeyWriteDeferred da qualsiasi routine chiave appartenente alla relativa interfaccia del canale.
Il driver miniport non deve riutilizzare il buffer a cui punta buffer dopo la chiamata iniziale a AtaPortRegistryChannelSubKeyWriteDeferred. Poiché la chiamata è asincrona, buffer potrebbe comunque puntare ai dati che non sono stati scaricati nel Registro di sistema. Il driver della porta scarica i dati nel buffer nel Registro di sistema quando il driver miniport chiama AtaPortRegistryFreeBuffer.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | irb.h (include Ata.h, Irb.h) |