IOCTL_BTH_GET_DEVICE_INFO IOCTL (bthioctl.h)
Die IOCTL_BTH_GET_DEVICE_INFO-Anforderung gibt Informationen zu allen zwischengespeicherten, zuvor ermittelten Remoteradios zurück, die Bluetooth-fähig sind.
Hauptcode
Eingabepuffer
Der AssociatedIrp.SystemBuffer-Member verweist auf einen Puffer für eine BTH_DEVICE_INFO_LIST-Struktur .
Länge des Eingabepuffers
Die Länge einer BTH_DEVICE_INFO_LIST-Struktur
Ausgabepuffer
Der AssociatedIrp.SystemBuffer-Member zeigt auf einen Puffer, der eine BTH_DEVICE_INFO_LIST-Struktur enthält. Der numOfDevices-Member der BTH_DEVICE_INFO_LIST-Struktur enthält die Anzahl der Geräte, für die Informationen vorhanden sind, sowie ein Array von BTH_DEVICE_INFO Strukturen. Ein Arrayeintrag für jedes Gerät.
Länge des Ausgabepuffers
Wenn die Größe des übergebenen Ausgabepuffers nicht genau sizeof(BTH_DEVICE_INFO_LIST)
plus dem richtigen Vielfachen von sizeof(BTH_DEVICE_INFO)
ist, schlägt die Anforderung mit STATUS_INVALID_BUFFER_SIZE fehl.
Statusblock
Wenn die Anforderung erfolgreich ist, wird der Information-Member der STATUS_BLOCK-Struktur auf die Größe des Puffers in Bytes festgelegt, der Informationen über das Array von Geräten enthält. Die BTH_DEVICE_INFO_LIST-Struktur enthält Speicher für die erste BTH_DEVICE_INFO-Struktur. Wenn also keine Geräte zurückgegeben werden, wird der Information-Member auf die Größe der ersten Struktur festgelegt.
Das Status-Element wird auf einen der Werte in der folgenden Tabelle festgelegt.
Statuswert | BESCHREIBUNG |
---|---|
STATUS_SUCCESS | Die IOCTL wurde erfolgreich abgeschlossen. |
STATUS_INVALID_PARAMETER | Der übergebene Eingabepuffer war NULL. |
STATUS_INVALID_BUFFER_SIZE | Die Größe des Ausgabepuffers war nicht richtig. |
Hinweise
Die IOCTL_BTH_GET_DEVICE_INFO IOCTL bietet Informationen zu allen zuvor ermittelten Remoteradios.
Der numOfDevices-Member der BTH_DEVICE_INFO_LIST-Struktur gibt die Gesamtzahl der BTH_DEVICE_INFO-Strukturen zurück, die von der IOCTL zurückgegeben werden. Wenn der aufrufende Treiber einen Puffer übergibt, der kleiner als der Wert des numOfDevices-Elements ist, wird nur ein Teil der verfügbaren Strukturen zurückgegeben. Bluetooth-Treiberentwickler sollten zuerst IOCTL_BTH_GET_DEVICE_INFO mit einem kleinen Puffer aufrufen, z. B sizeof(BTH_DEVICE_INFO_LIST)
. , und dann den zurückgegebenen numOfDevices-Member verwenden, um den Puffer für einen nachfolgenden Aufruf richtig zu dimensionieren.
Die BTH_DEVICE_INFO_LIST-Struktur enthält Speicher für die erste BTH_DEVICE_INFO-Struktur. Verwenden Sie die folgende Formel, um die richtige Puffergröße für einen Aufruf von IOCTL_BTH_GET_DEVICE_INFO zu berechnen:
Buffer=sizeof(BTH_DEVICE_INFO_LIST)+(NumOfDevices-1)*sizeof(BTH_DEVICE_INFO)
.
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 |