Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Gilt nur für KMDF]
Die WdfDeviceInitFree-Methode behandelt eine WDFDEVICE_INIT Struktur.
Syntax
void WdfDeviceInitFree(
[in] PWDFDEVICE_INIT DeviceInit
);
Parameter
[in] DeviceInit
Ein Zeiger auf eine WDFDEVICE_INIT Struktur.
Rückgabewert
Nichts
Bemerkungen
Wenn Ihr Treiber eine WDFDEVICE_INIT Struktur von einem Aufruf von WdfPdoInitAllocate oder WdfControlDeviceInitAllocateempfängt und wenn der Treiber anschließend auftritt ein Fehler, wenn eine Device Object Initialization-Methode oder WdfDeviceCreateaufgerufen wird, muss der Treiber WdfDeviceInitFreeaufrufen.
Ihr Treiber darf WdfDeviceInitFree- nicht aufrufen, nachdem er WdfDeviceCreate erfolgreich aufgerufen hat.
Ihr Treiber muss nicht WdfDeviceInitFree- aufrufen, wenn er die WDFDEVICE_INIT Struktur als Eingabe für seine EvtDriverDeviceAdd Rückruffunktion empfangen hat, da das Framework die Struktur nach dem Zurückgeben der Rückruffunktion löscht.
Weitere Informationen zum Aufrufen WdfDeviceCreatefinden Sie unter Creating a Framework Device Object.
Beispiele
Im folgenden Codebeispiel wird WdfDeviceInitFree- aufgerufen, wenn ein Aufruf von WdfPdoInitAssignRawDevice fehlschlägt.
NTSTATUS status;
status = WdfPdoInitAssignRawDevice(
pDeviceInit,
&GUID_DEVCLASS_KEYBOARD
);
if (!NT_SUCCESS(status)) {
WdfDeviceInitFree(pDeviceInit);
pDeviceInit = NULL;
return STATUS;
}
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Minimale KMDF-Version | 1.0 |
Header- | wdfdevice.h (einschließen Wdf.h) |
Library | Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.) |
IRQL- | <= DISPATCH_LEVEL |
DDI-Complianceregeln | DoubleDeviceInitFree(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCre, InitFreeDeviceCreateType2(kmdf), InitFreeDeviceCreateType4(kmdf), InitFreeNull() kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf), PdoInitFreeDeviceCreateType2(kmdf), PdoInitFreeDeviceCreateType4(kmdf) |