AtaPortRegistryControllerKeyWriteDeferred 함수(irb.h)
AtaPortRegistryControllerKeyWriteDeferred 루틴은 레지스트리 키 HKLM\CurrentControlSet\Services\<service name>\ControllerN
아래에 표시된 값 이름에 데이터를 비동기적으로 씁니다. 여기서 N은 컨트롤러의 수입니다.
구문
BOOLEAN AtaPortRegistryControllerKeyWriteDeferred(
[in] PVOID ChannelExtension,
[in] UCHAR ControllerNumber,
[in] PCHAR ValueName,
[in] UCHAR ValueType,
[in] PUCHAR Buffer,
PULONG BufferLength
);
매개 변수
[in] ChannelExtension
채널 확장에 대한 포인터입니다.
[in] ControllerNumber
컨트롤러 번호를 포함합니다.
[in] ValueName
쓸 레지스트리 값의 이름을 포함합니다.
[in] ValueType
레지스트리 값에 포함된 데이터의 형식을 나타냅니다. 이 멤버는 다음 표에 표시된 값 중 하나를 할당해야 합니다.
값 | 의미 |
---|---|
IDE_REG_DWORD | 4 바이트 숫자 값입니다. |
IDE_REG_BINARY | 이진 데이터. |
IDE_REG_SZ | null로 끝나는 유니코드 문자열입니다. |
[in] Buffer
레지스트리 값에 쓸 데이터를 포함하는 원본 버퍼에 대한 포인터입니다.
BufferLength
복사할 데이터 바이트 수에 대한 포인터입니다. 작업이 실패하면 Length 가 가리키는 위치가 레지스트리에 성공적으로 복사된 데이터 길이로 업데이트됩니다.
반환 값
작업이 성공하면 AtaPortRegistryControllerKeyWriteDeferred가 TRUE를 반환합니다. 그렇지 않으면 FALSE를 반환합니다. 미니포트 드라이버가 올바른 루틴에서 호출하지 않는 경우에도 루틴은 FALSE 를 반환합니다.
설명
값 이름이 없으면 AtaPortRegistryControllerKeyWriteDeferred 루틴은 값 이름에 대한 항목을 만들고 입력 데이터를 새로 만든 값 이름 아래에 저장합니다.
미니포트 드라이버는 채널 인터페이스에 정의된 루틴 중 하나에서 AtaPortRegistryControllerKeyWriteDeferred 루틴을 호출할 수 있습니다.
버퍼가 가리키는 버퍼는 AtaPortRegistryAllocateBuffer를 사용하여 할당해야 합니다. 포트 드라이버가 키 데이터 쓰기를 지연하므로 미니포트 드라이버는 AtaPortRegistryControllerKeyWriteDeferred 를 호출한 후 이 버퍼를 다시 사용하지 않아야 합니다. 미니포트 드라이버가 버퍼를 다시 사용하는 경우 포트 드라이버가 레지스트리 키에 저장할 기회가 있기 전에 버퍼의 데이터를 덮어쓸 수 있습니다. 포트 드라이버는 미니포트 드라이버가 AtaPortRegistryFreeBuffer 를 호출하여 버퍼를 해제할 때 버퍼를 플러시합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | irb.h(Ata.h, Irb.h 포함) |