Freigeben über


KsDeviceSetBusData-Funktion (ks.h)

Die KsDeviceSetBusData--Funktion schreibt Daten in den Bus, auf dem sich das angegebene AVStream-Gerät befindet.

Syntax

KSDDKAPI ULONG KsDeviceSetBusData(
  [in] PKSDEVICE Device,
  [in] ULONG     DataType,
  [in] PVOID     Buffer,
  [in] ULONG     Offset,
  [in] ULONG     Length
);

Parameter

[in] Device

Ein Zeiger auf eine KSDEVICE--Struktur. Diese Routine versucht, Daten in den Bus zu schreiben, auf dem sich dieses Gerät befindet.

[in] DataType

Dieser Parameter gibt den Typ der zu schreibenden Busdaten an. Null entspricht dem Konfigurationsraum. Weitere Informationen finden Sie in der Erläuterung von WhichSpace auf der Referenzseite für IRP_MN_READ_CONFIG.

[in] Buffer

Ein Zeiger auf einen Puffer, der die Daten enthält, die in den Bus geschrieben werden sollen. Die Anzahl der Bytes im Puffer muss gleich oder größer als Längesein.

[in] Offset

Dieser Parameter enthält den Byteoffset in den durch DataType angegebenen Leerzeichen, in den Daten geschrieben werden.

[in] Length

Dieser Parameter gibt die Anzahl der Bytes an, die aus Buffer in den Bus geschrieben werden sollen.

Rückgabewert

KsDeviceSetBusData gibt die Anzahl der Bytes zurück, die tatsächlich in den Bus geschrieben wurden. Bei einem Fehler gibt die Routine null zurück. Weitere Informationen finden Sie weiter unten im Abschnitt "Hinweise".

Bemerkungen

Diese Funktion führt je nach Treiber für den Bus, auf dem sich das angegebene Gerät befindet, unterschiedlich aus. Wenn der Bustreiber den Busschnittstellenstandard (in der Regel PCI) unterstützt, rufen Sie diese Funktion entweder bei IRQL = PASSIVE_LEVEL oder DISPATCH_LEVEL auf. Nach einem solchen Aufruf gibt KsDeviceSetBusData die tatsächliche Anzahl von Bytes zurück, die in den angeforderten Speicherplatz geschrieben wurden.

Wenn der Bustreiber den Busschnittstellenstandard nicht unterstützt, kommuniziert AVStream mit dem Bustreiber mit IoCallDriver. Rufen Sie in diesem Fall KsDeviceSetBusData- bei IRQL = PASSIVE_LEVEL auf. Der Rückgabewert ist entweder null, im Falle eines Fehlers oder gleich Length, wenn die Daten erfolgreich geschrieben wurden.

Treiber, die unter Windows 2000 und höher ausgeführt werden, können diesen Aufruf unter IRQL = DISPATCH_LEVEL ausführen. Um die Kompatibilität zu gewährleisten, möchten Minidriver-Autoren die Verwendung von KsDeviceSetBusData- auf IRQL = PASSIVE_LEVEL einschränken.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Microsoft Windows XP und höheren Betriebssystemen und DirectX 8.0 und höher directX-Versionen.
Zielplattform- Universal
Header- ks.h (enthalten Ks.h)
Library Ks.lib
IRQL- Siehe Abschnitt "Hinweise".

Siehe auch

IoCallDriver-

KsDeviceGetBusData-