Partager via


AtaPortRegistryControllerKeyWrite, fonction (irb.h)

La routine AtaPortRegistryControllerKeyWrite écrit les données dans le nom de valeur indiqué sous la clé de Registre HKLM\CurrentControlSet\Services\<service name>\ControllerN, où N est le nombre du contrôleur.

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

Syntaxe

BOOLEAN AtaPortRegistryControllerKeyWrite(
  [in] PVOID  ChannelExtension,
  [in] UCHAR  ControllerNumber,
  [in] PCHAR  ValueName,
  [in] UCHAR  ValueType,
  [in] 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 dans laquelle écrire.

[in] ValueType

Indique le type de données contenues dans la valeur de Registre. Ce membre doit être affecté à l’une des valeurs indiquées dans le tableau suivant.

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

[in] Buffer

Pointeur vers la mémoire tampon source qui contient les données à écrire dans la valeur de Registre.

BufferLength

Pointeur vers le nombre d’octets de données à copier. Si l’opération échoue, l’emplacement vers lequel pointe Length met à jour la longueur des données qui ont été correctement copiées dans le Registre.

Valeur de retour

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

Remarques

La mémoire tampon doit être allouée à l’aide de AtaPortRegistryAllocateBuffer.

Le pilote miniport doit appeler AtaPortRegistryControllerKeyWrite pendant la routine AtaChannelInitRoutine ou la routine IdeHwControl. ; Le pilote miniport ne peut pas appeler AtaPortRegistryControllerKeyWrite à partir d’une autre routine, ou il retourne FAUX. En outre, le pilote miniport ne peut appeler que AtaPortRegistryControllerKeyWrite à partir de sa routine IdeHwControl si sa routine IdeHwControl a été appelée et avait une valeur de StartChannel ou StopChannel dans son paramètre ControlAction .

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête irb.h (include Ata.h, Irb.h)

Voir aussi

AtaChannelInitRoutine

AtaPortRegistryAllocateBuffer

IdeHwControl