Freigeben über


WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE-Funktion (wdfiotarget.h)

[Gilt nur für KMDF]

Die WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE-Funktion initialisiert die WDF_IO_TARGET_OPEN_PARAMS Struktur eines Treibers, sodass der Treiber ein E/A-Remoteziel öffnen kann, indem er ein WDM-Geräteobjekt (Windows Driver Model) angibt.

Syntax

void WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
  [out] PWDF_IO_TARGET_OPEN_PARAMS Params,
  [in]  PDEVICE_OBJECT             DeviceObject
);

Parameter

[out] Params

Ein Zeiger auf eine vom Treiber zugewiesene WDF_IO_TARGET_OPEN_PARAMS Struktur, die die Funktion initialisiert.

[in] DeviceObject

Ein Zeiger auf eine DEVICE_OBJECT-Struktur , die als Wert für den DeviceObject-Member der WDF_IO_TARGET_OPEN_PARAMS-Struktur verwendet wird.

Rückgabewert

Keine

Bemerkungen

Die WDF_IO_TARGET_OPEN_PARAMS-Struktur wird als Eingabe für die WdfIoTargetOpen-Methode verwendet.

Die WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE-Funktion initialisiert die Member Size, Type und TargetDeviceObject der angegebenen WDF_IO_TARGET_OPEN_PARAMS-Struktur .

In der Regel legt ein Treiber das TargetFileObject-Element der WDF_IO_TARGET_OPEN_PARAMS-Struktur fest, nachdem der Treiber WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE aufgerufen hat.

Weitere Informationen zu E/A-Zielen finden Sie unter Verwenden von E/A-Zielen.

Beispiele

Im folgenden Codebeispiel wird ein E/A-Zielobjekt erstellt und das Ziel durch Angabe einer DEVICE_OBJECT-Struktur geöffnet. Der Beispieltreiber ruft die DEVICE_OBJECT-Struktur ab, indem NdisMGetDeviceProperty aufgerufen wird (nicht angezeigt).

WDF_IO_TARGET_OPEN_PARAMS  openParams;
NTSTATUS  ntStatus;

ntStatus = WdfIoTargetCreate(
                             Adapter->WdfDevice,
                             WDF_NO_OBJECT_ATTRIBUTES,
                             &Adapter->IoTarget
                             );
if (!NT_SUCCESS(ntStatus)) {
    DEBUGP(MP_ERROR, ("WdfIoTargetCreate failed 0x%x\n", ntStatus));
    break;
}

WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
                                               &openParams,
                                               Adapter->NextDeviceObject
                                               );

ntStatus = WdfIoTargetOpen(Adapter->IoTarget,
                           &openParams);
if (!NT_SUCCESS(ntStatus)) {
    DEBUGP(MP_ERROR, ("WdfIoTargetOpen failed 0x%x\n", ntStatus));
    break;
}

Anforderungen

Anforderung Wert
Zielplattform Universell
KMDF-Mindestversion 1.0
Kopfzeile wdfiotarget.h (include Wdf.h)
IRQL Beliebige Ebene

Weitere Informationen

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

WdfIoTargetOpen