UfxFdoInit-Funktion (ufxclient.h)
Initialisiert die WDFDEVICE_INIT Struktur, die der Clienttreiber anschließend bereitstellt, wenn er WdfDeviceCreateaufruft.
Syntax
NTSTATUS UfxFdoInit(
[in] WDFDRIVER WdfDriver,
[in, out] PWDFDEVICE_INIT DeviceInit,
[in, out] PWDF_OBJECT_ATTRIBUTES FdoAttributes
);
Parameter
[in] WdfDriver
Ein Handle für das WDF-Treiberobjekt des Treibers, das der Treiber aus einem vorherigen Aufruf von WdfDriverCreate oder WdfGetDriver-abgerufen hat.
[in, out] DeviceInit
Ein Zeiger auf eine WDFDEVICE_INIT Struktur.
[in, out] FdoAttributes
Ein Zeiger auf eine vom Aufrufer zugewiesene WDF_OBJECT_ATTRIBUTES Struktur, die Objektattribute für die
Rückgabewert
Wenn der Vorgang erfolgreich ist, gibt die Methode STATUS_SUCCESS oder einen anderen Statuswert zurück, für den NT_SUCCESS(status) gleich TRUE ist. Andernfalls wird ein Statuswert zurückgegeben, für den NT_SUCCESS(Status) GLEICH FALSE ist.
Bemerkungen
Der Clienttreiber empfängt einen Zeiger auf eine vom Framework zugewiesene WDFDEVICE_INIT Struktur in seiner EvtDriverDeviceAdd Rückruffunktion. Anschließend wird UfxFdoInit- mit diesem Zeiger aufgerufen, bevor WdfDeviceCreate aufgerufen wird, um das WDFDEVICE-Objekt zu erstellen.
Bei WDF-Treibern ist der Funktionstreiber des Geräts standardmäßig der Besitzer der Energierichtlinie.
Der folgende Codeausschnitt zeigt, wie UfxFdoInitaufgerufen wird.
NTSTATUS
UfxClientDeviceCreate(
_In_ WDFDRIVER Driver,
_In_ PWDFDEVICE_INIT DeviceInit
)
/*++
Routine Description:
Worker routine called to create a device and its software resources.
Arguments:
Driver - WDF driver object
DeviceInit - Pointer to an opaque init structure. Memory for this
structure will be freed by the framework when WdfDeviceCreate
succeeds. So don't access the structure after that point.
Return Value:
Appropriate NTSTATUS value
--*/
{
WDF_OBJECT_ATTRIBUTES DeviceAttributes;
WDFDEVICE WdfDevice;
PAGED_CODE();
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&DeviceAttributes, CONTROLLER_CONTEXT);
//
// Do UFX-specific initialization
//
Status = UfxFdoInit(Driver, DeviceInit, &DeviceAttributes);
//
// Proceed to WdfDeviceCreate
//
...
}
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 10 |
Zielplattform- | Fenster |
Header- | ufxclient.h |
Library | ufxstub.lib |
IRQL- | PASSIVE_LEVEL |