Condividi tramite


Funzione AtaPortRegistryControllerKeyRead (irb.h)

La routine AtaPortRegistryControllerKeyRead legge i dati associati al nome di valore indicato nella chiave del Registro di sistema HKLM\CurrentControlSet\Services\<service name>\ControllerN, dove N è il numero del controller.

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

Sintassi

BOOLEAN AtaPortRegistryControllerKeyRead(
  [in]            PVOID  ChannelExtension,
  [in]            UCHAR  ControllerNumber,
  [in]            PCHAR  ValueName,
  [in]            UCHAR  ValueType,
  [out, optional] 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 leggere.

[in] ValueType

Indica il tipo di dati contenuti nel valore del Registro di sistema. A questo parametro deve essere assegnato uno dei valori indicati nella tabella seguente.

Tipo valore Significato
IDE_REG_DWORD Valore numerico a 4 byte.
IDE_REG_BINARY Dati binari.
IDE_REG_SZ Stringa Unicode con terminazione Null.

[out, optional] Buffer

Puntatore al buffer in cui devono essere copiati i risultati.

BufferLength

Puntatore al numero di byte di dati da copiare. Se l'operazione non riesce a causa di un buffer insufficiente, il percorso a cui punta Lunghezza verrà aggiornato alla lunghezza effettiva dei dati nel Registro di sistema.

Valore restituito

AtaPortRegistryControllerKeyRead restituisce TRUE se l'operazione ha esito positivo. In caso contrario, restituisce FALSE. La routine AtaPortRegistryControllerKeyRead restituisce anche FALSE se il driver miniport non lo chiama dalla routine corretta.

Osservazioni

Il buffer in corrispondenza buffer deve essere allocato usando AtaPortRegistryAllocateBuffer.

Il driver miniport deve chiamare AtaPortRegistryControllerKeyRead nella routine AtaChannelInitRoutine o nella routine IdeHwControl . Non può chiamare AtaPortRegistryControllerKeyRead da qualsiasi altra routine. Inoltre, il driver miniport può chiamare solo AtaPortRegistryControllerKeyRead dalla routine IdeHwControl se la routine IdeHwControl è stata chiamata e ha un valore StartChannel o StopChannel nel parametro ControlAction .

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione irb.h (include Ata.h, Irb.h)

Vedere anche

AtaChannelInitRoutine

AtaPortRegistryAllocateBuffer

IdeHwControl