다음을 통해 공유


AtaPortRegistryControllerKeyWrite 함수(irb.h)

AtaPortRegistryControllerKeyWrite 루틴은 레지스트리 키 HKLM\CurrentControlSet\Services\<service name>\ControllerN아래에 표시된 값 이름에 데이터를 씁니다. 여기서 N은 컨트롤러의 수입니다.

참고 ATA 포트 드라이버 및 ATA 미니포트 드라이버 모델은 나중에 변경되거나 사용할 수 없습니다. 대신 Storport 드라이버Storport 미니포트 드라이버 모델을 사용하는 것이 좋습니다.
 

구문

BOOLEAN AtaPortRegistryControllerKeyWrite(
  [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 가 가리키는 위치는 레지스트리에 성공적으로 복사된 데이터의 길이를 업데이트합니다.

반환 값

작업이 성공하면 AtaPortRegistryControllerKeyWriteTRUE를 반환합니다. 그렇지 않으면 FALSE를 반환합니다. 미니포트 드라이버가 올바른 루틴에서 호출하지 않는 경우에도 루틴은 FALSE 를 반환합니다.

설명

버퍼는 AtaPortRegistryAllocateBuffer를 사용하여 할당해야 합니다.

미니포트 드라이버는 AtaChannelInitRoutine 루틴 또는 IdeHwControl 루틴 중에 AtaPortRegistryControllerKeyWrite를 호출해야 합니다. 미니포트 드라이버는 다른 루틴에서 AtaPortRegistryControllerKeyWrite를 호출할 수 없거나 FALSE를 반환합니다. 또한 미니포트 드라이버는 IdeHwControl 루틴이 호출되고 ControlAction 매개 변수에 StartChannel 또는 StopChannel 값이 있는 경우에만 IdeHwControl 루틴에서 AtaPortRegistryControllerKeyWrite를 호출할 수 있습니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 irb.h(Ata.h, Irb.h 포함)

추가 정보

AtaChannelInitRoutine

AtaPortRegistryAllocateBuffer

IdeHwControl