AtaPortRegistryAllocateBuffer 함수(irb.h)
AtaPortRegistryAllocateBuffer 루틴은 레지스트리 작업에 대한 버퍼를 할당합니다.
구문
PVOID AtaPortRegistryAllocateBuffer(
[in] PVOID ChannelExtension,
ULONG BufferSize
);
매개 변수
[in] ChannelExtension
채널 확장에 대한 포인터입니다.
BufferSize
버퍼의 길이(바이트)를 지정합니다.
반환 값
AtaPortRegistryAllocateBuffer 는 성공 시 할당된 버퍼에 대한 포인터를 반환합니다. 그렇지 않으면 NULL을 반환합니다.
설명
포트 드라이버를 사용하면 미니포트 드라이버가 모든 레지스트리 작업에 대해 하나의 버퍼를 할당할 수 있습니다. 미니포트 드라이버가 AtaPortRegistryAllocateBuffer를 사용하여 버퍼를 할당한 후 나중에 AtaPortRegistryAllocateBuffer 에 대한 호출이 실패하고 NULL을 반환합니다. 미니포트 드라이버가 AtaPortRegistryFreeBuffer 루틴을 호출하여 할당된 버퍼를 해제한 후 AtaPortRegistryAllocateBuffer를 호출하여 버퍼를 다시 할당할 수 있습니다.
미니포트 드라이버는 AtaChannelInitRoutine 루틴 또는 IdeHwControl 루틴에서 AtaPortRegistryAllocateBuffer를 호출해야 합니다. 다른 루틴에서는 AtaPortRegistryAllocateBuffer 를 호출할 수 없습니다. 또한 미니포트 드라이버는 IdeHwControl 루틴이 호출되고 ControlAction 매개 변수에서 StartChannel 또는 StopChannel 값이 있는 경우에만 IdeHwControl 루틴에서 AtaPortRegistryAllocateBuffer를 호출할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | irb.h(Ata.h, Irb.h 포함) |
라이브러리 | Ataport.lib; Pciidex.lib |