Partager via


Fonction AtaPortRegistryChannelSubkeyRead (irb.h)

La routine AtaPortRegistryChannelSubKeyRead lit les données associées au nom de la valeur indiquée sous la clé HKLM\CurrentControlSet\Services\<service name>\ControllerN\ChannelMde Registre , où N est le numéro du contrôleur et M le numéro du canal.

Note Les modèles de pilote de port ATA et de pilote miniport ATA peuvent être modifiés ou indisponibles à l’avenir. Au lieu de cela, nous vous recommandons d’utiliser les modèles de pilote Storport et de pilote Miniport Storport .
 

Syntaxe

BOOLEAN AtaPortRegistryChannelSubkeyRead(
  [in]            PVOID  ChannelExtension,
  [in]            UCHAR  ControllerNumber,
  [in]            PCHAR  ValueName,
  [in]            UCHAR  ValueType,
  [out, optional] PUCHAR Buffer,
                  PULONG BufferLength
);

Paramètres

[in] ChannelExtension

Pointeur vers l’extension de canal.

[in] ControllerNumber

Contient le numéro du contrôleur.

[in] ValueName

Contient le nom de la valeur de Registre à partir de laquelle lire.

[in] ValueType

Indique le type de données contenues dans la valeur de Registre. L’une des valeurs indiquées dans le tableau suivant doit être attribuée à ce membre.

Valeur Signification
IDE_REG_DWORD Valeur numérique de 4 octets.
IDE_REG_BINARY Données binaires.
IDE_REG_SZ Valeur null terminée. Chaîne Unicode.

[out, optional] Buffer

Pointeur vers la mémoire tampon de destination où les données lues à partir du Registre seront écrites.

BufferLength

Pointeur vers le nombre d’octets de données à copier. Si l’opération échoue, l’emplacement pointé vers Longueur est mis à jour vers la longueur des données qui ont été correctement copiées à partir du Registre.

Valeur retournée

AtaPortRegistryChannelSubKeyRead retourne TRUE si l’opération réussit. Sinon, il retourne FALSE. La routine retourne également FALSE si le pilote miniport ne l’appelle pas à partir de la routine correcte.

Remarques

La mémoire tampon pointée par Buffer doit être allouée à l’aide d’AtaPortRegistryAllocateBuffer.

Le pilote miniport doit appeler AtaPortRegistryChannelSubKeyRead pendant la routine AtaChannelInitRoutine ou la routine IdeHwControl , sinon il retourne FALSE. En outre, le pilote miniport peut uniquement appeler AtaPortRegistryChannelSubKeyRead à partir de sa routine IdeHwControl si sa routine IdeHwControl a été appelée et a la valeur StartChannel ou StopChannel dans son paramètre ControlAction .

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête irb.h (inclure Ata.h, Irb.h)

Voir aussi

AtaChannelInitRoutine

AtaPortRegistryAllocateBuffer

AtaPortRegistryChannelSubKeyWrite

IdeHwControl