Freigeben über


AtaPortRegistryAllocateBuffer-Funktion (irb.h)

Die AtaPortRegistryAllocateBuffer-Routine weist einen Puffer für Registrierungsvorgänge zu.

Hinweis Die Modelle ATA-Porttreiber und ATA-Miniporttreiber können in Zukunft geändert oder nicht mehr verfügbar sein. Stattdessen wird empfohlen, die Modelle Storport-Treiber und Storport-Miniporttreiber zu verwenden.
 

Syntax

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

Parameter

[in] ChannelExtension

Ein Zeiger auf die Kanalerweiterung.

BufferSize

Gibt die Länge des Puffers in Bytes an.

Rückgabewert

AtaPortRegistryAllocateBuffer gibt bei Erfolg einen Zeiger auf den zugeordneten Puffer zurück. Andernfalls wird NULL zurückgegeben.

Hinweise

Der Porttreiber ermöglicht es dem Miniporttreiber, einen Puffer für alle Registrierungsvorgänge zuzuweisen. Nachdem der Miniporttreiber ataPortRegistryAllocateBuffer einen Puffer zugewiesen hat, schlagen spätere Aufrufe von AtaPortRegistryAllocateBuffer fehl und geben NULL zurück. Nachdem der Miniporttreiber den zugewiesenen Puffer mit einem Aufruf der AtaPortRegistryFreeBuffer-Routine freigegeben hat, kann er erneut Puffer zuordnen, indem er AtaPortRegistryAllocateBuffer aufruft.

Der Miniporttreiber muss AtaPortRegistryAllocateBuffer entweder in seiner AtaChannelInitRoutine-Routine oder in seiner IdeHwControl-Routine aufrufen. AtaPortRegistryAllocateBuffer kann von keiner anderen Routine aufgerufen werden. Darüber hinaus kann der Miniporttreiber AtaPortRegistryAllocateBuffer nur über seine IdeHwControl-Routine aufrufen, wenn seine IdeHwControl-Routine aufgerufen wurde und im ControlAction-Parameter den Wert StartChannel oder StopChannel hatte.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile irb.h (include Ata.h, Irb.h)
Bibliothek Ataport.lib; Pciidex.lib

Weitere Informationen

AtaChannelInitRoutine

AtaPortRegistryFreeBuffer

IdeHwControl