Freigeben über


WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME-Funktion (wdfiotarget.h)

[Gilt für KMDF und UMDF]

Die WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME-Funktion initialisiert die WDF_IO_TARGET_OPEN_PARAMS Struktur eines Treibers, sodass der Treiber ein E/A-Ziel öffnen kann, indem er den Namen des Geräts, der Datei oder der Geräteschnittstelle angibt. Wenn der angegebene Name nicht vorhanden ist, versucht das Betriebssystem, ihn zu erstellen.

Syntax

void WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME(
  [out] PWDF_IO_TARGET_OPEN_PARAMS Params,
  [in]  PCUNICODE_STRING           TargetDeviceName,
  [in]  ACCESS_MASK                DesiredAccess
);

Parameter

[out] Params

Ein Zeiger auf eine vom Treiber zugewiesene WDF_IO_TARGET_OPEN_PARAMS-Struktur , die von der Funktion initialisiert wird.

[in] TargetDeviceName

Ein Wert für das TargetDeviceName-Element der WDF_IO_TARGET_OPEN_PARAMS-Struktur .

[in] DesiredAccess

Ein Wert für das DesiredAccess-Element der WDF_IO_TARGET_OPEN_PARAMS-Struktur .

Rückgabewert

Keine

Bemerkungen

Wenn TargetDeviceName den Namen einer bereits vorhandenen Datei angibt, ersetzt das System die vorhandene Datei. Wenn die Datei nicht vorhanden ist, wird sie vom System erstellt.

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

KMDF Die WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME-Funktion initialisiert die Member Size, Type, TargetDeviceName, DesiredAccess und CreateOptions der angegebenen WDF_IO_TARGET_OPEN_PARAMS-Struktur .

UMDF Die WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME-Funktion initialisiert die Member Size, Type, DesiredAccess und TargetDeviceName der angegebenen WDF_IO_TARGET_OPEN_PARAMS-Struktur . Das ShareAccess-Element wird auf 0 festgelegt. Außerdem wird der FileAttributes-Member auf FILE_ATTRIBUTE_NORMAL festgelegt.

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 ein Ziel durch Angabe eines Dateinamens geöffnet.

UNICODE_STRING  fileName;

RtlInitUnicodeString(
                     &fileName, 
                     (PCWSTR)PROTOCOL_INTERFACE_NAME
                     );

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

WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME(
                                              &openParams,
                                              &fileName,
                                              STANDARD_RIGHTS_ALL
                                              );

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

Anforderungen

Anforderung Wert
Zielplattform Universell
KMDF-Mindestversion 1.0
UMDF-Mindestversion 2.0
Kopfzeile wdfiotarget.h (einschließen von Wdf.h)
IRQL Beliebige Ebene

Weitere Informationen

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

WdfIoTargetOpen