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
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 |