IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL(bthioctl.h)
IOCTL_BTH_SDP_ATTRIBUTE_SEARCH 요청은 지정된 SDP 레코드에 대한 특성을 가져옵니다.
주 코드
입력 버퍼
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 |