KsDeviceSetBusData, fonction (ks.h)
La fonction KsDeviceSetBusData écrit des données dans le bus sur lequel réside l’appareil AVStream spécifié.
Syntaxe
KSDDKAPI ULONG KsDeviceSetBusData(
[in] PKSDEVICE Device,
[in] ULONG DataType,
[in] PVOID Buffer,
[in] ULONG Offset,
[in] ULONG Length
);
Paramètres
[in] Device
Pointeur vers une structure KSDEVICE. Cette routine tente d’écrire des données dans le bus sur lequel réside cet appareil.
[in] DataType
Ce paramètre indique le type de données de bus à écrire. Zéro correspond à l’espace de configuration. Pour plus d’informations, consultez la discussion de WhichSpace dans la page de référence pour IRP_MN_READ_CONFIG.
[in] Buffer
Pointeur vers une mémoire tampon qui contient les données à écrire dans le bus. Le nombre d’octets dans la mémoire tampon doit être égal ou supérieur à Longueur.
[in] Offset
Ce paramètre contient le décalage d’octet dans l’espace spécifié par DataType où les données sont écrites.
[in] Length
Ce paramètre spécifie le nombre d’octets de données à écrire dans le bus à partir de mémoire tampon.
Valeur de retour
KsDeviceSetBusData retourne le nombre d’octets réellement écrits dans le bus. En cas d’erreur, la routine retourne zéro. Consultez les détails ci-dessous dans la section Remarques.
Remarques
Cette fonction s’effectue différemment en fonction du pilote du bus sur lequel réside l’appareil spécifié. Si le pilote de bus prend en charge la norme d’interface de bus (généralement PCI), appelez cette fonction à IRQL = PASSIVE_LEVEL ou DISPATCH_LEVEL. Après un tel appel, KsDeviceSetBusData retourne le nombre réel d’octets écrits dans l’espace demandé.
Si le pilote de bus ne prend pas en charge la norme d’interface de bus, AVStream communique avec le pilote de bus à l’aide de IoCallDriver. Dans ce cas, appelez KsDeviceSetBusData à IRQL = PASSIVE_LEVEL. La valeur de retour est égale à zéro, en cas d’échec ou égale à Longueur si les données ont été écrites avec succès.
Les pilotes s’exécutant sur Windows 2000 et versions ultérieures peuvent effectuer cet appel à IRQL = DISPATCH_LEVEL. Toutefois, pour garantir la compatibilité, les enregistreurs minidriver peuvent vouloir restreindre l’utilisation de KsDeviceSetBusData à IRQL = PASSIVE_LEVEL.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et DirectX 8.0 et versions ultérieures de DirectX. |
plateforme cible | Universel |
d’en-tête | ks.h (include Ks.h) |
bibliothèque | Ks.lib |
IRQL | Voir la section Remarques. |