Aturan InitFreeNull (kmdf)

Aturan InitFreeNull menentukan bahwa DDI yang menerima PWDFDEVICE_INIT sebagai parameter tidak dapat dipanggil dengan menggunakan penunjuk NULL ke struktur WDFDEVICE_INIT .

Metode yang disediakan kerangka kerja menginisialisasi struktur WDFDEVICE_INIT . Ketika driver memanggil WdfDeviceCreate untuk membuat objek perangkat fungsional (FDO) atau objek perangkat fisik (PDO), metode WdfDeviceCreate mengatur parameter pertama ke NULL jika berhasil.

Jika driver mengalami kesalahan ketika memanggil metode inisialisasi objek perangkat atau WdfDeviceCreate, driver harus memanggil WdfDeviceInitFree. Setelah panggilan berhasil ke WdfDeviceInitFree, Anda harus mengatur penunjuk ke struktur WDFDEVICE_INIT ke NULL (PWDFDEVICE_INIT=NULL).

Model driver: KMDF

Cara menguji

Pada waktu kompilasi

Jalankan Pemverifikasi Driver Statis dan tentukan aturan InitFreeNull .

Gunakan langkah-langkah berikut untuk menjalankan analisis kode Anda:
  1. Siapkan kode Anda (gunakan deklarasi jenis peran).
  2. Jalankan Pemverifikasi Driver Statis.
  3. Lihat dan analisis hasilnya.

Untuk informasi selengkapnya, lihat Menggunakan Pemverifikasi Driver Statis untuk Menemukan Cacat pada Driver.

Berlaku untuk

WdfDeviceCreateWdfDeviceInitAssignNameWdfDeviceInitAssignSDDLStringWdfDeviceInitAssignWdmIrpPreprocessCallbackWdfDeviceInitFreeWdfDeviceInitRegisterPnpStateChangeCallback WdfDeviceInitFree WdfDeviceInitRegisterPnpStateChangeCallbackWdfDeviceInitRegisterPowerPolicyStateChangeCallbackWdfDeviceInitRegisterPowerStateChangeCallbackWdfPdoInitAddCompatibleIDWdfPdoInitAddDeviceTextWdfPdoInitAddHardwareIDWdfPdoInitAssignDeviceIDWdfPdoInitAssignInstanceIDWdfPdoInitAssignRawDevice

Lihat juga

InitFreeDeviceCallbackInitFreeDeviceCreateInitFreeDeviceCreateType2PdoInitFreeDeviceCreateType2InitFreeDeviceCreateType4PdoInitFreeDeviceCallbackPdoInitFreeDeviceCreatePdoInitFreeDeviceCreateType4