Fungsi WdfObjectDereferenceActual (wdfobject.h)
[Berlaku untuk KMDF dan UMDF]
Metode WdfObjectDereferenceActual mengurangi jumlah referensi untuk objek kerangka kerja tertentu dan menetapkan nilai tag, nomor baris, dan nama file ke referensi.
Sintaks
void WdfObjectDereferenceActual(
[in] WDFOBJECT Handle,
[in, optional] PVOID Tag,
[in] LONG Line,
[in, optional] PCCH File
);
Parameter
[in] Handle
Handel ke objek kerangka kerja.
[in, optional] Tag
Nilai yang ditentukan driver yang mengidentifikasi referensi objek. Nilai tag harus cocok dengan nilai tag yang sebelumnya diberikan driver ke WdfObjectReferenceActual.
[in] Line
Nilai numerik yang mewakili nomor baris dalam file sumber driver.
[in, optional] File
Penunjuk ke string karakter konstanta yang dihentikan null yang mewakili nama file sumber driver. Parameter ini bersifat opsional dan dapat berupa NULL.
Nilai kembali
Tidak ada
Keterangan
Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.
Jika jumlah referensi objek menjadi nol, objek mungkin dihapus sebelum WdfObjectDereferenceActual kembali.
Memanggil WdfObjectDereferenceActual atau WdfObjectDereferenceWithTag alih-alihWdfObjectDereference menyediakan informasi tambahan (string tag, nomor baris, dan nama file) ke debugger Microsoft. WdfObjectDereferenceActual memungkinkan driver Anda menentukan nomor baris dan nama file, sementara WdfObjectDereferenceWithTag menggunakan nomor baris dan nama file driver saat ini.
Anda dapat melihat nilai tag, nomor baris, dan nama file dengan menggunakan ekstensi debugger !wdftagtracker . Ekstensi debugger menampilkan nilai tag sebagai penunjuk dan serangkaian karakter. Untuk informasi selengkapnya tentang ekstensi debugger, lihat Men-debug Driver KMDF.
Untuk informasi selengkapnya tentang jumlah referensi objek dan aturan pembersihan untuk hierarki objek kerangka kerja, lihat Siklus Hidup Objek Kerangka Kerja.
Contoh
Contoh kode berikut mengurangi jumlah referensi objek dan menetapkan nilai tag, nomor baris, dan nama file ke referensi.
WdfObjectDereferenceActual(
object,
pTag,
line,
FILE_NAME
);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Versi UMDF minimum | 2.0 |
Header | wdfobject.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
Aturan kepatuhan DDI | DriverCreate(kmdf) |