Fungsi WdfObjectCreate (wdfobject.h)
[Berlaku untuk KMDF dan UMDF]
Metode WdfObjectCreate membuat objek kerangka kerja umum.
Sintaks
NTSTATUS WdfObjectCreate(
[in, optional] PWDF_OBJECT_ATTRIBUTES Attributes,
[out] WDFOBJECT *Object
);
Parameter
[in, optional] Attributes
Penunjuk ke struktur WDF_OBJECT_ATTRIBUTES yang berisi atribut yang disediakan driver untuk objek baru. Parameter ini bersifat opsional dan dapat WDF_NO_OBJECT_ATTRIBUTES.
[out] Object
Penunjuk ke lokasi yang menerima handel ke objek kerangka kerja baru.
Nilai kembali
WdfObjectCreate mengembalikan STATUS_SUCCESS jika operasi berhasil. Untuk daftar nilai pengembalian tambahan, lihat Kesalahan Pembuatan Objek Kerangka Kerja.
Metode ini mungkin juga mengembalikan nilai NTSTATUS lainnya.
Keterangan
Secara default, induk objek kerangka kerja umum baru adalah objek driver kerangka kerja yang dibuat metode WdfDriverCreate . Anda dapat menggunakan anggota ParentObject dari struktur WDF_OBJECT_ATTRIBUTES untuk menentukan induk yang berbeda. Kerangka kerja menghapus objek umum saat menghapus objek induk. Jika driver Anda tidak mengubah induk default, driver harus menghapus objek umum ketika selesai menggunakan objek ; jika tidak, objek akan tetap ada sampai manajer I/O membongkar driver Anda.
Untuk informasi selengkapnya tentang metode WdfObjectCreate , lihat Menggunakan Objek Kerangka Kerja Umum.
Untuk informasi selengkapnya tentang aturan pembersihan untuk hierarki objek kerangka kerja, lihat Siklus Hidup Objek Kerangka Kerja.
Contoh
Contoh kode berikut menginisialisasi struktur WDF_OBJECT_ATTRIBUTES dan membuat objek kerangka kerja umum.
WDF_OBJECT_ATTRIBUTES Attributes;
WDFOBJECT Object;
WDF_OBJECT_ATTRIBUTES_INIT(&Attributes);
status = WdfObjectCreate(
&Attributes,
&Object
);
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), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |