Freigeben über


IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR IOCTL (sidebandaudio.h)

Der Audiotreiber gibt die IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR aus, um Informationen zu einer aktivierten Sideband-Audiogeräteschnittstelle abzurufen. Dies gibt insbesondere die Anzahl der Audioendpunkte zurück, die auf einem Gerät verfügbar sind, das Sideband unterstützt. Diese Informationen werden in einer Audiogerätedeskriptorstruktur zurückgegeben.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

NULL.

Eingabepufferlänge

Ausgabepuffer

Ein Puffer, der eine SIDEBANDAUDIO_DEVICE_DESCRIPTOR-Struktur enthält.

Länge des Ausgabepuffers

Die Größe einer SIDEBANDAUDIO_DEVICE_DESCRIPTOR-Struktur .

Statusblock

Wenn die Routine erfolgreich ist, wird Status auf STATUS_SUCCESS festgelegt, und der Informationsmember ist die Anzahl der Bytes, die die Routine in den Ausgabepuffer schreibt.

Wenn Status auf STATUS_BUFFER_TOO_SMALL festgelegt ist, sollte der Audiotreiber den Informationsmember lesen, um die Größe des Puffers abzurufen, den der Aufrufer für diese Anforderung zuweisen soll.

Hinweise

Diese IOCTL kann nur im Kernelmodus aufgerufen werden.

Der Audiotreiber sendet diese Anforderung, um Informationen über eine aktivierte Audio-Seitenbandgeräteschnittstelle abzurufen. Die Informationen ändern sich nicht, während die Schnittstelle aktiviert ist, sondern können sich ändern, wenn die Schnittstelle deaktiviert ist. Der Audiotreiber sendet diese Anforderung kurz nach dem Ermitteln einer aktivierten Sideband-Audiogeräteschnittstelle und bestimmt anhand der Informationen, wie viele Sideband-Audioendpunkte verfügbar sind.

Der Audiotreiber sendet diese Anforderung einmal mit einer Ausgabepuffergröße von null (0), um die erforderliche Ausgabepuffergröße zu bestimmen. In diesem Fall schließt die Anforderung mit Status STATUS_BUFFER_TOO_SMALL ab und legt den Informationsmember auf die erforderliche Puffergröße fest. Der Audiotreiber ordnet dann den erforderlichen Speicherplatz zu und sendet die Anforderung erneut. In der Regel speichert ein Audiotreiber einen Zeiger auf diesen Speicherort in seinem Gerätekontext, um während einer späteren Aktivität referenzieren zu können.

Der Audiotreiber kann dann die einzelnen Endpunktfunktionen mit dem IOCTL-IOCTL_SBAUD_GET_ENDPOINT_DESCRIPTOR iterativ bestimmen.

Anforderungen

Anforderung Wert
Header sidebandaudio.h

Weitere Informationen

sidebandaudio.h

Einführung in E/A-Steuerungscodes