Freigeben über


IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL (bthioctl.h)

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

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Das AssociatedIrp.SystemBuffer Member enthält einen BTH_SDP_ATTRIBUTE_SEARCH_REQUEST Struktur, die den Remotecomputerbereich von Attributen angibt, die durchsucht werden sollen, sowie andere Schlüsselmber.

Eingabepufferlänge

Die Länge eines BTH_SDP_ATTRIBUTE_SEARCH_REQUEST Struktur.

Ausgabepuffer

Der AssociatedIrp.SystemBuffer Member verweist auf einen Puffer, der eine BTH_SDP_STREAM_RESPONSE Struktur enthält, auf die ein unformatierter SDP-Datenstrom mit variabler Länge folgt.

Länge des Ausgabepuffers

Die Länge einer BTH_SDP_STREAM_RESPONSE Struktur.

Statusblock

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

Der Status Member wird auf einen der Werte in der folgenden Tabelle festgelegt.

Statuswert Beschreibung
STATUS_SUCCESS Die 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 Der Ausgabepuffer wurde falsch angepasst.
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.

Bemerkungen

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 die Bluetooth-Verbindung übertragen wird, oder informationen vom SDP-Server mithilfe einer kleinen Anzahl von Nachrichtenübertragungseinheiten (Message Transfer Units, MTUs) extrahieren muss, sollte der Profiltreiber die IOCTL_BTH_SDP_SERVICE_SEARCH IOCTL, um eine Dienstsuche auszuführen. Der Profiltreiber sollte dann die IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL aufrufen, um eine Attributsuche auszuführen.

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

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Versionen:_Supported in Windows Vista und höher.
Header- bthioctl.h (include Bthioctl.h)
IRQL- <= PASSIVE_LEVEL

Siehe auch

BTH_SDP_ATTRIBUTE_SEARCH_REQUEST

BTH_SDP_STREAM_RESPONSE

IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH

IOCTL_BTH_SDP_SERVICE_SEARCH