IOCTL_BTHHFP_DEVICE_GET_DESCRIPTOR IOCTL(bthhfpddi.h)

오디오 드라이버는 IOCTL_BTHHFP_DEVICE_GET_DESCRIPTOR 제어 코드를 발급하여 활성화된 GUID_DEVINTERFACE_BLUETOOTH_HFP_SCO_HCIBYPASS 디바이스 인터페이스에 대한 정보를 가져옵니다.

참고 이 IOCTL은 현재 사용되지 않는 IOCTL_BTHHFP_DEVICE_GET_KSNODETYPESIOCTL_BTHHFP_DEVICE_GET_CONTAINERID 대체합니다.
 

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

없음

입력 버퍼 길이

없음

출력 버퍼

BTHHFP_DESCRIPTOR 구조체와 구조체가 참조하는 다른 데이터가 포함된 버퍼입니다. 출력 버퍼 크기가 충분하고 요청이 성공하는 경우 이는 사실입니다. 특히 버퍼에는 BTHHFP_DESCRIPTOR 구조체의 FriendlyName 필드에서 참조하는 문자열에 대한 스토리지가 포함됩니다.

출력 버퍼 길이

BTHHFP_DESCRIPTOR 구조체 및 참조된 데이터의 크기입니다.

상태 블록

루틴이 성공하면 Status가 STATUS_SUCCESS 설정되고 Information 멤버는 루틴이 출력 버퍼에 쓰는 바이트 수입니다.

참고 출력 버퍼에 구조체에서 참조하는 다른 데이터가 포함될 수 있으므로 BTHHFP_DESCRIPTOR 구조체의 크기보다 클 수 있습니다.
 
상태가 STATUS_BUFFER_TOO_SMALL 설정된 경우 오디오 드라이버는 정보 멤버를 읽어 호출자가 이 요청에 할당해야 하는 버퍼의 크기를 가져와야 합니다.

설명

오디오 드라이버는 활성화된 GUID_DEVINTERFACE_BLUETOOTH_HFP_SCO_HCIBYPASS 디바이스 인터페이스에 대한 정보를 얻기 위해 이 요청을 보냅니다. 인터페이스를 사용하는 동안에는 정보가 변경되지 않지만 인터페이스가 사용하지 않도록 설정된 동안 변경될 수 있습니다. 따라서 오디오 드라이버는 활성화된 디바이스 인터페이스를 검색한 직후 이 요청을 보내고 정보를 사용하여 적절한 KSFILTER_DESCRIPTOR 구조를 빌드합니다.

오디오 드라이버는 필요한 출력 버퍼 크기를 결정하기 위해 출력 버퍼 크기가 0인 이 요청을 한 번 보냅니다. 이 경우 요청은 상태 STATUS_BUFFER_TOO_SMALL 완료되고 정보 멤버를 필요한 버퍼 크기로 설정합니다. 그런 다음 오디오 드라이버는 필요한 스토리지 공간을 할당하고 요청을 다시 보냅니다. 일반적으로 오디오 드라이버는 이후 작업 중에 참조를 위해 이 스토리지 위치에 대한 포인터를 디바이스 컨텍스트에 저장합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8
지원되는 최소 서버 Windows Server 2012
머리글 bthhfpddi.h

추가 정보

Bluetooth HFP DDI IOCTL

IOCTL_BTHHFP_DEVICE_GET_CONTAINERID

IOCTL_BTHHFP_DEVICE_GET_KSNODETYPES