Partager via


Fonction AtaPortRegistryAllocateBuffer (irb.h)

La routine AtaPortRegistryAllocateBuffer alloue une mémoire tampon pour les opérations du Registre.

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

PVOID AtaPortRegistryAllocateBuffer(
  [in] PVOID ChannelExtension,
       ULONG BufferSize
);

Paramètres

[in] ChannelExtension

Pointeur vers l’extension de canal.

BufferSize

Spécifie la longueur de la mémoire tampon, en octets.

Valeur retournée

AtaPortRegistryAllocateBuffer retourne un pointeur vers la mémoire tampon allouée en cas de réussite. Dans le cas contraire, elle retourne LA VALEUR NULL.

Remarques

Le pilote de port permet au pilote miniport d’allouer une mémoire tampon pour toutes ses opérations de Registre. Une fois que le pilote miniport a alloué une mémoire tampon avec AtaPortRegistryAllocateBuffer, les appels ultérieurs à AtaPortRegistryAllocateBuffer échouent et retournent NULL. Une fois que le pilote miniport a libéré la mémoire tampon allouée avec un appel à la routine AtaPortRegistryFreeBuffer , il peut à nouveau allouer des mémoires tampons en appelant AtaPortRegistryAllocateBuffer.

Le pilote miniport doit appeler AtaPortRegistryAllocateBuffer dans sa routine AtaChannelInitRoutine ou dans sa routine IdeHwControl . Il ne peut pas appeler AtaPortRegistryAllocateBuffer à partir d’une autre routine. En outre, le pilote miniport peut uniquement appeler AtaPortRegistryAllocateBuffer à 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)
Bibliothèque Ataport.lib ; Pciidex.lib

Voir aussi

AtaChannelInitRoutine

AtaPortRegistryFreeBuffer

IdeHwControl