Funzione AtaPortRegistryChannelSubkeyWriteDeferred (irb.h)

La routine AtaPortRegistryChannelSubKeyWriteDeferred scrive i dati in modo asincrono nel nome del valore indicato nella chiave HKLM\CurrentControlSet\Services\<service name>\ControllerN\ChannelMdel Registro di sistema , dove N è il numero del controller e M è il numero del canale.

Nota I modelli di driver di porta ATA e ATA miniport possono essere modificati o non disponibili in futuro. È invece consigliabile usare i modelli di driver Storport e Miniport Storport.
 

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 da scrivere.

[in] ValueType

Indica il tipo di dati contenuti nel valore del Registro di sistema. 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 ha esito negativo, il percorso a cui punta lunghezza verrà aggiornato alla lunghezza dei dati scritti correttamente nel Registro di sistema.

Valore restituito

AtaPortRegistryChannelSubKeyWriteDeferred restituisceTRUE se l'operazione. In caso contrario, restituisce FALSE. La routine restituisce anche FALSE se il driver miniport non lo chiama dalla routine corretta.

Commenti

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 il buffer deve essere allocato usando AtaPortRegistryAllocateBuffer.

Il driver miniport può chiamare AtaPortRegistryChannelSubKeyWriteDeferred da una delle routine chiave che appartengono alla relativa interfaccia del canale.

Il driver miniport non deve riutilizzare il buffer a cui fa riferimento 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 di porta scarica i dati nel buffer nel Registro di sistema quando il driver miniport chiama AtaPortRegistryFreeBuffer.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione irb.h (include Ata.h, Irb.h)

Vedi anche

AtaPortRegistryAllocateBuffer

AtaPortRegistryFreeBuffer