IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL(bthioctl.h)

IOCTL_BTH_SDP_ATTRIBUTE_SEARCH 요청은 지정된 SDP 레코드에 대한 특성을 가져옵니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

AssociatedIrp.SystemBuffer 멤버에 가 포함되어 있습니다. 검색 할 특성의 원격 컴퓨터 범위와 다른 키 멤버를 지정하는 BTH_SDP_ATTRIBUTE_SEARCH_REQUEST 구조체입니다.

입력 버퍼 길이

의 길이 BTH_SDP_ATTRIBUTE_SEARCH_REQUEST 구조체입니다.

출력 버퍼

AssociatedIrp.SystemBuffer 멤버는 가변 길이 원시 SDP 스트림 뒤에 BTH_SDP_STREAM_RESPONSE 구조체가 포함된 버퍼를 가리킵니다.

출력 버퍼 길이

BTH_SDP_STREAM_RESPONSE 구조체의 길이입니다.

상태 블록

요청이 성공하면 STATUS_BLOCK 구조체의 정보 멤버가 출력 버퍼의 크기(바이트) 또는 BTH_SDP_STREAM_RESPONSE 출력 버퍼의 크기(바이트)로 설정됩니다. 그렇지 않으면 정보 멤버가 0으로 설정됩니다.

Status 멤버는 다음 표의 값 중 하나로 설정됩니다.

상태 값 Description
STATUS_SUCCESS IOCTL이 성공적으로 완료되었습니다.
STATUS_DEVICE_NOT_CONNECTED SDP 서비스가 있는 디바이스가 연결되지 않았습니다.
STATUS_INSUFFICIENT_RESOURCES 메모리가 부족하여 이 작업을 완료할 수 없습니다.
STATUS_INVALID_BUFFER_SIZE 출력 버퍼의 크기가 잘못되었습니다.
STATUS_INVALID_PARAMETER 입력 버퍼의 값 중 하나가 잘못되었습니다.
STATUS_REQUEST_NOT_ACCEPTED SDP 서비스에서 요청을 거부했습니다.
STATUS_TOO_MANY_GUIDS_REQUESTED SDP 서비스에서 입력 버퍼에 전달된 GUID 수를 처리할 수 없습니다.

설명

대부분의 경우 프로필 드라이버는 를 호출하여 SDP 서비스 및 특성 검색을 결합할 수 있습니다. IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH Ioctl. 프로필 드라이버가 Bluetooth 링크를 통해 전송되는 SDP 트래픽의 양을 줄이거나 소수의 MTU(메시지 전송 단위)를 사용하여 SDP 서버에서 정보를 추출해야 하는 경우 프로필 드라이버는 를 호출해야 합니다. IOCTL_BTH_SDP_SERVICE_SEARCH 서비스 검색을 수행하는 IOCTL입니다. 그런 다음 프로필 드라이버는 IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL을 호출하여 특성 검색을 수행해야 합니다.

출력 버퍼에 반환된 BTH_SDP_STREAM_RESPONSE 구조체에는 전체 SDP 레코드의 크기, BTH_SDP_STREAM_RESPONSE 구조를 따르는 원시 SDP 레코드 스트림의 크기(바이트)와 해당 스트림의 첫 번째 바이트에 대한 정보가 포함됩니다. 가변 길이 스트림은 검색에서 반환된 SDP 레코드 특성입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 버전:windows Vista 이상에서 _Supported.
머리글 bthioctl.h(Bthioctl.h 포함)
IRQL <= PASSIVE_LEVEL

추가 정보

BTH_SDP_ATTRIBUTE_SEARCH_REQUEST

BTH_SDP_STREAM_RESPONSE

IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH

IOCTL_BTH_SDP_SERVICE_SEARCH