WdfDeviceInitSetIoType, fonction (wdfdevice.h)
[S’applique à KMDF et UMDF]
La méthode WdfDeviceInitSetIoType définit la méthode ou la préférence pour la façon dont un pilote accède aux mémoires tampons de données incluses dans les demandes de lecture et d’écriture pour un appareil spécifié.
Syntaxe
void WdfDeviceInitSetIoType(
[in] PWDFDEVICE_INIT DeviceInit,
[in] WDF_DEVICE_IO_TYPE IoType
);
Paramètres
[in] DeviceInit
Pointeur vers une structure WDFDEVICE_INIT.
[in] IoType
Énumérateur WDF_DEVICE_IO_TYPE-typé qui identifie la méthode utilisée par le pilote pour accéder aux mémoires tampons de données qu’il reçoit pour les demandes de lecture et d’écriture.
Valeur de retour
Aucun
Remarques
KMDF Si vous écrivez un nouveau pilote à l’aide de KMDF version 1.13 ou ultérieure, vous devez utiliser WdfDeviceInitSetIoTypeEx. L’appel WdfDeviceInitSetIoType à partir d’un pilote de filtre KMDF n’a aucun effet. Pour les pilotes de filtre, l’infrastructure utilise le type d’E/S spécifié par le pilote inférieur suivant dans la pile des pilotes.
UMDF si vous convertissez un pilote KMDF qui appelle WdfDeviceInitSetIoType vers UMDF version 2.0 ou ultérieure, votre pilote converti peut continuer à appeler WdfDeviceInitSetIoType sans problème. Toutefois, si vous écrivez un nouveau pilote à l’aide de la version 2.0 ou ultérieure de UMDF, vous devez utiliser à la place WdfDeviceInitSetIoTypeEx.
Si un pilote appelle WdfDeviceInitSetIoType, il doit le faire avant d’appeler WdfDeviceCreate. Pour plus d’informations sur l’appel WdfDeviceCreate, consultez Création d’un objet d’appareil Framework.
Si le pilote n’appelle pas WdfDeviceInitSetIoType, l’infrastructure définit la méthode d’accès à la mémoire tampon du pilote sur WdfDeviceIoBuffered, pour l’appareil spécifié.
Pour plus d’informations sur les méthodes d’accès aux mémoires tampons, consultez Accès aux mémoires tampons de données.
Exemples
L’exemple de code suivant indique qu’un pilote utilisera la méthode d’E/S directe lorsqu’il accède à l’appareil.
WdfDeviceInitSetIoType(
DeviceInit,
WdfDeviceIoDirect
);
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
version minimale de KMDF | 1.0 |
version minimale de UMDF | 2.0 |
d’en-tête | wdfdevice.h (include Wdf.h) |
bibliothèque | Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
règles de conformité DDI | childDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf) |