WdfDeviceInitFree, fonction (wdfdevice.h)
[S’applique uniquement à KMDF]
La méthode WdfDeviceInitFree libère une structure WDFDEVICE_INIT .
Syntaxe
void WdfDeviceInitFree(
[in] PWDFDEVICE_INIT DeviceInit
);
Paramètres
[in] DeviceInit
Pointeur vers une structure WDFDEVICE_INIT .
Valeur de retour
None
Remarques
Si votre pilote reçoit une structure WDFDEVICE_INIT d’un appel à WdfPdoInitAllocate ou WdfControlDeviceInitAllocate, et si le pilote rencontre par la suite une erreur lorsqu’il appelle une méthode d’initialisation d’objet d’appareil ou WdfDeviceCreate, le pilote doit appeler WdfDeviceInitFree.
Votre pilote ne doit pas appeler WdfDeviceInitFree après avoir appelé WdfDeviceCreate avec succès.
Votre pilote n’a pas besoin d’appeler WdfDeviceInitFree s’il a reçu la structure WDFDEVICE_INIT comme entrée dans sa fonction de rappel EvtDriverDeviceAdd , car l’infrastructure supprime la structure après le retour de la fonction de rappel.
Pour plus d’informations sur l’appel de WdfDeviceCreate, consultez Création d’un objet d’appareil framework.
Exemples
L’exemple de code suivant appelle WdfDeviceInitFree si un appel à WdfPdoInitAssignRawDevice échoue.
NTSTATUS status;
status = WdfPdoInitAssignRawDevice(
pDeviceInit,
&GUID_DEVCLASS_KEYBOARD
);
if (!NT_SUCCESS(status)) {
WdfDeviceInitFree(pDeviceInit);
pDeviceInit = NULL;
return STATUS;
}
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
En-tête | wdfdevice.h (include Wdf.h) |
Bibliothèque | Wdf01000.sys (consultez Gestion de version de la bibliothèque d’infrastructure.) |
IRQL | <= DISPATCH_LEVEL |
Règles de conformité DDI | DoubleDeviceInitFree(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeDeviceCreateType2(kmdf), InitFreeDeviceCreateType4(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf), PdoInitFreeDeviceCreateType2(kmdf), PdoInitFreeDeviceCreateType4(kmdf) |