Fungsi WdfFileObjectGetFileName (wdffileobject.h)

[Berlaku untuk KMDF dan UMDF]

Metode WdfFileObjectGetFileName mengembalikan nama file yang berisi objek file kerangka kerja tertentu.

Sintaks

PUNICODE_STRING WdfFileObjectGetFileName(
  [in] WDFFILEOBJECT FileObject
);

Parameter

[in] FileObject

Handel ke objek file kerangka kerja.

Nilai kembali

WdfFileObjectGetFileName mengembalikan penunjuk ke struktur UNICODE_STRING yang berisi nama file. Metode mengembalikan NULL jika tidak ada objek file WDM untuk objek file kerangka kerja yang ditentukan, atau jika dipanggil pada IRQL yang lebih tinggi dari PASSIVE_LEVEL.

Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.

Keterangan

Jika driver menentukan string referensi saat disebut WdfDeviceCreateDeviceInterface, WdfFileObjectGetFileName mengembalikan string referensi yang sebelumnya oleh garis miring terbalik. Untuk menentukan string referensi, hapus garis miring terbelakang.

String yang dikembalikan dapat berisi nama file atau string referensi. String tidak berisi nama perangkat. Jika komponen aplikasi atau mode kernel telah membuka perangkat alih-alih file, tanpa string referensi, anggota Panjang struktur UNICODE_STRING yang dikembalikan adalah nol.

Driver Anda hanya boleh memanggil WdfFileObjectGetFileName saat sedang memproses permintaan pembuatan file (jenis permintaan WdfRequestTypeCreate ). Driver Anda mungkin memproses permintaan I/O jenis WdfRequestTypeCreate dalam fungsi panggilan balik EvtDeviceFileCreate .

Atau, alih-alih menyediakan fungsi panggilan balik EvtDeviceFileCreate , driver dapat memanggil WdfDeviceConfigureRequestDispatching untuk mengatur antrean I/O untuk menerima semua permintaan pembuatan file (jenis permintaan WdfRequestTypeCreate ). Driver kemudian akan menerima permintaan pembuatan file dalam penangan permintaan EvtIoDefault antrean.

Untuk informasi selengkapnya tentang objek file kerangka kerja, lihat Objek File Kerangka Kerja.

Untuk informasi selengkapnya tentang nama file, lihat Mengontrol Akses Namespace Perangkat.

Untuk informasi selengkapnya tentang string referensi, lihat IoRegisterDeviceInterface.

Contoh

Contoh kode berikut menunjukkan bagaimana fungsi panggilan balik EvtDeviceFileCreate dapat memperoleh nama file yang telah dibuka aplikasi.

VOID
MyEvtDeviceFileCreate (
    IN WDFDEVICE  Device,
    IN WDFREQUEST  Request,
    IN WDFFILEOBJECT  FileObject
    )
{
    PUNICODE_STRING  fileName;

    fileName = WdfFileObjectGetFileName(FileObject);
...

}

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Versi UMDF minimum 2.0
Header wdffileobject.h (termasuk Wdf.h)
Pustaka Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Lihat juga

UNICODE_STRING

WdfDeviceCreateDeviceInterface