IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL (bthioctl.h)

Die IOCTL_BTH_SDP_ATTRIBUTE_SEARCH Anforderung ruft Attribute für den angegebenen SDP-Datensatz ab.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Das AssociatedIrp.SystemBuffer-Element enthält ein BTH_SDP_ATTRIBUTE_SEARCH_REQUEST Struktur, die den Bereich der zu durchsuchenden Attribute des Remotecomputers sowie andere Schlüsselmember angibt.

Eingabepufferlänge

Die Länge eines BTH_SDP_ATTRIBUTE_SEARCH_REQUEST Struktur.

Ausgabepuffer

Das AssociatedIrp.SystemBuffer-Element verweist auf einen Puffer, der eine BTH_SDP_STREAM_RESPONSE-Struktur enthält, gefolgt von einem unformatierten SDP-Stream mit variabler Länge.

Länge des Ausgabepuffers

Die Länge einer BTH_SDP_STREAM_RESPONSE Struktur.

Statusblock

Wenn die Anforderung erfolgreich ist, wird der Informationsmember der STATUS_BLOCK-Struktur auf die Größe des BTH_SDP_STREAM_RESPONSE oder der Größe des Ausgabepuffers in Bytes festgelegt, je nachdem, welcher Wert kleiner ist. Andernfalls wird das Element Information auf 0 festgelegt.

Das Statuselement ist auf einen der Werte in der folgenden Tabelle festgelegt.

Statuswert BESCHREIBUNG
STATUS_SUCCESS Das IOCTL wurde erfolgreich abgeschlossen.
STATUS_DEVICE_NOT_CONNECTED Das Gerät, auf dem sich der SDP-Dienst befindet, war nicht verbunden.
STATUS_INSUFFICIENT_RESOURCES Es war nicht genügend Arbeitsspeicher vorhanden, um diesen Vorgang abzuschließen.
STATUS_INVALID_BUFFER_SIZE Die Größe des Ausgabepuffers war falsch.
STATUS_INVALID_PARAMETER Einer der Werte im Eingabepuffer war ungültig.
STATUS_REQUEST_NOT_ACCEPTED Der SDP-Dienst hat die Anforderung abgelehnt.
STATUS_TOO_MANY_GUIDS_REQUESTED Der SDP-Dienst konnte die Anzahl der im Eingabepuffer übergebenen GUIDs nicht verarbeiten.

Hinweise

In den meisten Fällen können Profiltreiber SDP-Dienst- und Attributsuchen kombinieren, indem sie die IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH IOCTL. Wenn ein Profiltreiber die Menge des SDP-Datenverkehrs reduzieren muss, der über den Bluetooth-Link übertragen wird, oder Informationen vom SDP-Server mithilfe einer kleinen Anzahl von Message Transfer Units (MTUs) extrahieren muss, sollte der Profiltreiber die IOCTL_BTH_SDP_SERVICE_SEARCH IOCTL zum Ausführen einer Dienstsuche. Der Profiltreiber sollte dann den IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL aufrufen, um eine Attributsuche durchzuführen.

Die BTH_SDP_STREAM_RESPONSE-Struktur, die im Ausgabepuffer zurückgegeben wird, enthält Informationen über die Größe des gesamten SDP-Datensatzes, die Größe des unformatierten SDP-Datensatzdatenstroms in Bytes, der der BTH_SDP_STREAM_RESPONSE-Struktur folgt, und das erste Byte dieses Datenstroms. Der Stream mit variabler Länge ist die SDP-Datensatzattribute, die von der Suche zurückgegeben werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Versionen:_Supported in Windows Vista und höher.
Kopfzeile bthioctl.h (einschließlich Bthioctl.h)
IRQL <= PASSIVE_LEVEL

Weitere Informationen

BTH_SDP_ATTRIBUTE_SEARCH_REQUEST

BTH_SDP_STREAM_RESPONSE

IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH

IOCTL_BTH_SDP_SERVICE_SEARCH